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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: active#_A(x1) = x1 + 1291 zeros_A = 0 mark#_A(x1) = 1291 cons_A(x1,x2) = 0 |0|_A = 0 U96_A(x1) = 0 mark_A(x1) = x1 + 137 take_A(x1,x2) = 0 s_A(x1) = 0 U131_A(x1,x2,x3,x4) = 0 isNatIList_A(x1) = 0 U95_A(x1,x2) = 0 U121_A(x1,x2) = 0 U94_A(x1,x2,x3) = 0 length_A(x1) = 0 U111_A(x1,x2,x3) = 0 isNatList_A(x1) = 0 U93_A(x1,x2,x3) = 0 U101_A(x1,x2,x3) = 0 isNatKind_A(x1) = 0 U92_A(x1,x2,x3) = 0 U91_A(x1,x2,x3) = 0 U81_A(x1) = 0 U71_A(x1) = 0 isNatIListKind_A(x1) = 0 U61_A(x1,x2) = 0 U62_A(x1) = 0 U51_A(x1,x2) = 0 U41_A(x1,x2,x3) = 0 U52_A(x1) = 0 U31_A(x1,x2) = 0 isNat_A(x1) = 0 U21_A(x1,x2) = 0 U46_A(x1) = 0 U11_A(x1,x2) = 0 U45_A(x1,x2) = 0 tt_A = 0 U44_A(x1,x2,x3) = 0 U43_A(x1,x2,x3) = 0 U42_A(x1,x2,x3) = 0 U33_A(x1) = 0 U32_A(x1,x2) = 0 U23_A(x1) = 0 U22_A(x1,x2) = 0 U136_A(x1,x2,x3,x4) = 0 U135_A(x1,x2,x3,x4) = 0 U134_A(x1,x2,x3,x4) = 0 U133_A(x1,x2,x3,x4) = 0 U132_A(x1,x2,x3,x4) = 0 U122_A(x1) = 0 U13_A(x1) = 0 U12_A(x1,x2) = 0 U114_A(x1,x2) = 0 U113_A(x1,x2,x3) = 0 U112_A(x1,x2,x3) = 0 U105_A(x1,x2) = 0 U106_A(x1) = 0 U104_A(x1,x2,x3) = 0 U103_A(x1,x2,x3) = 0 U102_A(x1,x2,x3) = 0 active_A(x1) = x1 + 137 nil_A = 0 2. max/plus interpretations on natural numbers: active#_A(x1) = max{0, x1 - 20} zeros_A = 33 mark#_A(x1) = 13 cons_A(x1,x2) = 14 |0|_A = 33 U96_A(x1) = 9 mark_A(x1) = max{0, x1 - 14} take_A(x1,x2) = 33 s_A(x1) = 21 U131_A(x1,x2,x3,x4) = 33 isNatIList_A(x1) = 33 U95_A(x1,x2) = 33 U121_A(x1,x2) = 33 U94_A(x1,x2,x3) = 33 length_A(x1) = 33 U111_A(x1,x2,x3) = 33 isNatList_A(x1) = 33 U93_A(x1,x2,x3) = 33 U101_A(x1,x2,x3) = 33 isNatKind_A(x1) = 33 U92_A(x1,x2,x3) = 33 U91_A(x1,x2,x3) = 33 U81_A(x1) = 11 U71_A(x1) = 9 isNatIListKind_A(x1) = 33 U61_A(x1,x2) = 33 U62_A(x1) = 9 U51_A(x1,x2) = 33 U41_A(x1,x2,x3) = 33 U52_A(x1) = 2 U31_A(x1,x2) = 33 isNat_A(x1) = 33 U21_A(x1,x2) = 33 U46_A(x1) = 9 U11_A(x1,x2) = 33 U45_A(x1,x2) = 33 tt_A = 10 U44_A(x1,x2,x3) = 33 U43_A(x1,x2,x3) = 33 U42_A(x1,x2,x3) = 33 U33_A(x1) = 9 U32_A(x1,x2) = 33 U23_A(x1) = 23 U22_A(x1,x2) = 33 U136_A(x1,x2,x3,x4) = 33 U135_A(x1,x2,x3,x4) = 33 U134_A(x1,x2,x3,x4) = 33 U133_A(x1,x2,x3,x4) = 33 U132_A(x1,x2,x3,x4) = 33 U122_A(x1) = 2 U13_A(x1) = 9 U12_A(x1,x2) = 33 U114_A(x1,x2) = 33 U113_A(x1,x2,x3) = 33 U112_A(x1,x2,x3) = 33 U105_A(x1,x2) = 33 U106_A(x1) = 14 U104_A(x1,x2,x3) = 33 U103_A(x1,x2,x3) = 33 U102_A(x1,x2,x3) = 33 active_A(x1) = max{0, x1 - 14} nil_A = 14 The next rules are strictly ordered: p4, p22, p25, p28, p34, p40, p58, p67, p98, p106, p112, p135, 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: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U95(X1,X2)) -> mark#(X1) p6: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p7: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p8: mark#(U94(X1,X2,X3)) -> mark#(X1) p9: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U93(X1,X2,X3)) -> mark#(X1) p12: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p13: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p14: mark#(U92(X1,X2,X3)) -> mark#(X1) p15: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p16: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p17: mark#(U91(X1,X2,X3)) -> mark#(X1) p18: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U81(X)) -> mark#(X) p21: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p22: mark#(U71(X)) -> mark#(X) p23: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p24: mark#(U62(X)) -> mark#(X) p25: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p26: mark#(U61(X1,X2)) -> mark#(X1) p27: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p28: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p29: mark#(U52(X)) -> mark#(X) p30: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p31: mark#(U51(X1,X2)) -> mark#(X1) p32: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p33: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p34: mark#(U46(X)) -> mark#(X) p35: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p36: mark#(U45(X1,X2)) -> mark#(X1) p37: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p38: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p39: mark#(U44(X1,X2,X3)) -> mark#(X1) p40: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p41: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p42: mark#(U43(X1,X2,X3)) -> mark#(X1) p43: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p44: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p45: mark#(U42(X1,X2,X3)) -> mark#(X1) p46: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p47: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p48: mark#(U41(X1,X2,X3)) -> mark#(X1) p49: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p50: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p51: mark#(U33(X)) -> mark#(X) p52: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p53: mark#(U32(X1,X2)) -> mark#(X1) p54: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p55: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p56: mark#(U31(X1,X2)) -> mark#(X1) p57: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p58: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p59: mark#(U23(X)) -> mark#(X) p60: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p61: mark#(U22(X1,X2)) -> mark#(X1) p62: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p63: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p64: mark#(U21(X1,X2)) -> mark#(X1) p65: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p66: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,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#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,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#(U32(tt(),V)) -> mark#(U33(isNatList(V))) 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#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) 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#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) 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#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) 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#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) 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#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p89: mark#(U122(X)) -> mark#(X) p90: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p91: mark#(U121(X1,X2)) -> mark#(X1) p92: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p93: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p94: mark#(isNatList(X)) -> active#(isNatList(X)) p95: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p96: mark#(U13(X)) -> mark#(X) p97: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p98: mark#(length(X)) -> mark#(X) p99: mark#(length(X)) -> active#(length(mark(X))) p100: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p101: mark#(s(X)) -> mark#(X) p102: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p103: mark#(U114(X1,X2)) -> mark#(X1) p104: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p105: active#(U114(tt(),L)) -> mark#(s(length(L))) p106: mark#(U113(X1,X2,X3)) -> mark#(X1) p107: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p108: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p109: mark#(U112(X1,X2,X3)) -> mark#(X1) p110: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p111: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p112: mark#(U111(X1,X2,X3)) -> mark#(X1) p113: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p114: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p115: mark#(U12(X1,X2)) -> mark#(X1) p116: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p117: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p118: mark#(U11(X1,X2)) -> mark#(X1) p119: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p120: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p121: mark#(isNatIList(X)) -> active#(isNatIList(X)) p122: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p123: mark#(U106(X)) -> mark#(X) p124: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p125: mark#(isNat(X)) -> active#(isNat(X)) p126: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p127: mark#(U105(X1,X2)) -> mark#(X1) p128: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p129: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p130: mark#(U104(X1,X2,X3)) -> mark#(X1) p131: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p132: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p133: mark#(U103(X1,X2,X3)) -> mark#(X1) p134: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p135: mark#(isNatKind(X)) -> active#(isNatKind(X)) p136: mark#(U102(X1,X2,X3)) -> mark#(X1) p137: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p138: mark#(U101(X1,X2,X3)) -> mark#(X1) p139: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p140: 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} -- 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)) -> mark#(X) p47: mark#(length(X)) -> active#(length(mark(X))) p48: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p49: mark#(length(X)) -> mark#(X) p50: mark#(U13(X)) -> mark#(X) p51: mark#(isNatList(X)) -> active#(isNatList(X)) p52: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p53: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p54: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p55: mark#(U121(X1,X2)) -> mark#(X1) p56: mark#(U122(X)) -> mark#(X) p57: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p58: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p59: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p60: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p61: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p62: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p63: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p64: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p65: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p66: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p67: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p68: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p69: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p70: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p71: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p72: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p73: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p74: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p75: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p76: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p77: mark#(take(X1,X2)) -> mark#(X1) p78: mark#(take(X1,X2)) -> mark#(X2) p79: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p80: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p81: mark#(U21(X1,X2)) -> mark#(X1) p82: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p83: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p84: mark#(U22(X1,X2)) -> mark#(X1) p85: mark#(U23(X)) -> mark#(X) p86: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p87: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p88: mark#(U31(X1,X2)) -> mark#(X1) p89: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p90: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p91: mark#(U32(X1,X2)) -> mark#(X1) p92: mark#(U33(X)) -> mark#(X) p93: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p94: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p95: mark#(U41(X1,X2,X3)) -> mark#(X1) p96: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p97: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p98: mark#(U42(X1,X2,X3)) -> mark#(X1) p99: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p100: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p101: mark#(U43(X1,X2,X3)) -> mark#(X1) p102: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p103: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p104: mark#(U44(X1,X2,X3)) -> mark#(X1) p105: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p106: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p107: mark#(U45(X1,X2)) -> mark#(X1) p108: mark#(U46(X)) -> mark#(X) p109: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p110: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p111: mark#(U51(X1,X2)) -> mark#(X1) p112: mark#(U52(X)) -> mark#(X) p113: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p114: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p115: mark#(U61(X1,X2)) -> mark#(X1) p116: mark#(U62(X)) -> mark#(X) p117: mark#(U71(X)) -> mark#(X) p118: mark#(U81(X)) -> mark#(X) p119: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p120: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p121: mark#(U91(X1,X2,X3)) -> mark#(X1) p122: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p123: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p124: mark#(U92(X1,X2,X3)) -> mark#(X1) p125: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p126: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p127: mark#(U93(X1,X2,X3)) -> mark#(X1) p128: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p129: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p130: mark#(U94(X1,X2,X3)) -> mark#(X1) p131: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p132: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p133: mark#(U95(X1,X2)) -> mark#(X1) p134: mark#(U96(X)) -> mark#(X) p135: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p136: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p137: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p138: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p139: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p140: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: active#_A(x1) = max{0, x1 - 90} zeros_A = 909 mark#_A(x1) = max{77, x1 - 90} cons_A(x1,x2) = max{909, x1 + 735, x2} |0|_A = 63 U101_A(x1,x2,x3) = max{1161, x1 + 975, x2 + 350, x3 + 535} mark_A(x1) = max{174, x1} tt_A = 75 U102_A(x1,x2,x3) = max{1049, x1 + 168, x2 + 253, x3 + 534} isNatKind_A(x1) = max{182, x1 + 11} U103_A(x1,x2,x3) = max{828, x1 + 91, x2 + 252, x3 + 288} isNatIListKind_A(x1) = max{163, x1 - 366} U104_A(x1,x2,x3) = max{828, x1 + 654, x2 + 251, x3 + 287} U105_A(x1,x2) = max{828, x1 + 213, x2 + 286} isNat_A(x1) = max{183, x1 + 37} U106_A(x1) = max{287, x1 + 100} isNatIList_A(x1) = max{710, x1 + 185} U11_A(x1,x2) = max{542, x1 + 19, x2 + 1} U12_A(x1,x2) = max{542, x1 + 367, x2} U111_A(x1,x2,x3) = max{909, x1, x2, x3 + 735} U112_A(x1,x2,x3) = max{908, x1 + 167, x2, x3 + 340} U113_A(x1,x2,x3) = max{507, x1, x2, x3 + 339} U114_A(x1,x2) = max{506, x1, x2} s_A(x1) = max{173, x1} length_A(x1) = max{505, x1} U13_A(x1) = max{443, x1 + 2} isNatList_A(x1) = max{89, x1 - 3} U121_A(x1,x2) = max{1164, x1 + 342, x2 + 539} U122_A(x1) = max{1079, x1 + 905} U131_A(x1,x2,x3,x4) = max{x1 + 278, x2 + 539, x3 + 989, x4 + 1274} U132_A(x1,x2,x3,x4) = max{x1 + 905, x2 + 539, x3 + 989, x4 + 1274} U133_A(x1,x2,x3,x4) = max{x1 + 169, x2 + 539, x3 + 989, x4 + 1274} U134_A(x1,x2,x3,x4) = max{x1 + 356, x2 + 539, x3 + 989, x4 + 1274} U135_A(x1,x2,x3,x4) = max{x1 + 247, x2 + 539, x3 + 989, x4 + 1273} U136_A(x1,x2,x3,x4) = max{1264, x1 + 1090, x2 + 539, x3 + 989, x4 + 735} take_A(x1,x2) = max{1164, x1 + 989, x2 + 539} U21_A(x1,x2) = max{209, x1 + 1, x2 + 37} U22_A(x1,x2) = max{200, x1 + 26, x2 + 37} U23_A(x1) = max{200, x1} U31_A(x1,x2) = max{709, x1, x2 + 167} U32_A(x1,x2) = max{708, x1 + 533, x2 + 167} U33_A(x1) = max{609, x1 + 170} U41_A(x1,x2,x3) = max{x1 + 4, x2 + 728, x3 + 185} U42_A(x1,x2,x3) = max{x1 + 12, x2 + 727, x3 + 185} U43_A(x1,x2,x3) = max{x1 + 550, x2 + 726, x3 + 185} U44_A(x1,x2,x3) = max{726, x1 + 551, x2 + 724, x3 + 185} U45_A(x1,x2) = max{726, x1 + 1, x2 + 185} U46_A(x1) = max{174, x1} U51_A(x1,x2) = max{370, x1, x2 - 366} U52_A(x1) = max{174, x1} U61_A(x1,x2) = max{622, x1, x2 + 173} U62_A(x1) = max{174, x1} U91_A(x1,x2,x3) = max{733, x1 + 91, x2 + 565, x3 - 3} U92_A(x1,x2,x3) = max{x1 + 164, x2 + 338, x3 - 3} U93_A(x1,x2,x3) = max{x1 + 1, x2 + 337, x3 - 3} U94_A(x1,x2,x3) = max{x1 + 1, x2 + 336, x3 - 3} U95_A(x1,x2) = max{336, x1 + 153, x2 - 3} U96_A(x1) = max{174, x1} U71_A(x1) = max{181, x1 + 7} U81_A(x1) = max{183, x1} active_A(x1) = max{169, x1} nil_A = 541 2. max/plus interpretations on natural numbers: active#_A(x1) = 0 zeros_A = 37 mark#_A(x1) = 0 cons_A(x1,x2) = 99 |0|_A = 64 U101_A(x1,x2,x3) = 70 mark_A(x1) = 63 tt_A = 41 U102_A(x1,x2,x3) = 47 isNatKind_A(x1) = 76 U103_A(x1,x2,x3) = 37 isNatIListKind_A(x1) = 29 U104_A(x1,x2,x3) = 95 U105_A(x1,x2) = 85 isNat_A(x1) = 40 U106_A(x1) = 62 isNatIList_A(x1) = 61 U11_A(x1,x2) = 63 U12_A(x1,x2) = 42 U111_A(x1,x2,x3) = 52 U112_A(x1,x2,x3) = 42 U113_A(x1,x2,x3) = 42 U114_A(x1,x2) = 42 s_A(x1) = 28 length_A(x1) = 26 U13_A(x1) = 93 isNatList_A(x1) = 40 U121_A(x1,x2) = 42 U122_A(x1) = 61 U131_A(x1,x2,x3,x4) = 31 U132_A(x1,x2,x3,x4) = 42 U133_A(x1,x2,x3,x4) = 52 U134_A(x1,x2,x3,x4) = 42 U135_A(x1,x2,x3,x4) = 40 U136_A(x1,x2,x3,x4) = 30 take_A(x1,x2) = 52 U21_A(x1,x2) = 42 U22_A(x1,x2) = 94 U23_A(x1) = 84 U31_A(x1,x2) = 51 U32_A(x1,x2) = 42 U33_A(x1) = 42 U41_A(x1,x2,x3) = 53 U42_A(x1,x2,x3) = 62 U43_A(x1,x2,x3) = 62 U44_A(x1,x2,x3) = 73 U45_A(x1,x2) = 50 U46_A(x1) = 42 U51_A(x1,x2) = 29 U52_A(x1) = 21 U61_A(x1,x2) = 64 U62_A(x1) = 56 U91_A(x1,x2,x3) = 30 U92_A(x1,x2,x3) = 42 U93_A(x1,x2,x3) = 32 U94_A(x1,x2,x3) = 52 U95_A(x1,x2) = 42 U96_A(x1) = 42 U71_A(x1) = 62 U81_A(x1) = 68 active_A(x1) = 63 nil_A = 64 The next rules are strictly ordered: p2, p5, p6, p8, p9, p14, p16, p19, p22, p25, p30, p32, p33, p39, p50, p55, p56, p59, p62, p65, p68, p71, p74, p77, p78, p81, p84, p90, p91, p92, p95, p98, p101, p104, p107, p117, p120, p121, p124, p127, p130, p132, p133 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#(zeros()) -> active#(zeros()) p3: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p4: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) 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#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p10: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p11: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p12: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p13: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p14: mark#(isNat(X)) -> active#(isNat(X)) p15: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p16: mark#(isNatIList(X)) -> active#(isNatIList(X)) p17: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p18: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p19: active#(U114(tt(),L)) -> mark#(s(length(L))) p20: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p21: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p22: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p23: mark#(U111(X1,X2,X3)) -> mark#(X1) p24: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p25: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p26: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p27: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p28: mark#(U113(X1,X2,X3)) -> mark#(X1) p29: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p30: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p31: mark#(U114(X1,X2)) -> mark#(X1) p32: mark#(s(X)) -> mark#(X) p33: mark#(length(X)) -> active#(length(mark(X))) p34: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p35: mark#(length(X)) -> mark#(X) p36: mark#(isNatList(X)) -> active#(isNatList(X)) p37: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p38: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) 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#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p46: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p47: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p48: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p49: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p50: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p51: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p52: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p53: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p54: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p55: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p56: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p57: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p58: mark#(U23(X)) -> mark#(X) p59: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p60: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p61: mark#(U31(X1,X2)) -> mark#(X1) p62: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p63: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p64: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p65: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p66: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p67: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p68: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p69: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p70: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p71: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p72: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p73: mark#(U46(X)) -> mark#(X) p74: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p75: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p76: mark#(U51(X1,X2)) -> mark#(X1) p77: mark#(U52(X)) -> mark#(X) p78: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p79: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p80: mark#(U61(X1,X2)) -> mark#(X1) p81: mark#(U62(X)) -> mark#(X) p82: mark#(U81(X)) -> mark#(X) p83: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p84: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p85: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p86: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p87: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p88: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p89: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p90: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p91: mark#(U96(X)) -> mark#(X) p92: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p93: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p94: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p95: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p96: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p97: 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: {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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p3: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p4: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p5: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p6: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p7: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) 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)) -> active#(U91(mark(X1),X2,X3)) p11: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p12: mark#(U81(X)) -> mark#(X) p13: mark#(U62(X)) -> mark#(X) p14: mark#(U61(X1,X2)) -> mark#(X1) p15: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p16: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p17: mark#(U52(X)) -> mark#(X) p18: mark#(U51(X1,X2)) -> mark#(X1) p19: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p20: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p21: mark#(U46(X)) -> mark#(X) p22: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p23: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p24: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p25: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p26: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p27: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p28: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p29: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p30: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p31: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p32: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p33: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p34: mark#(U31(X1,X2)) -> mark#(X1) p35: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p36: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p37: mark#(U23(X)) -> mark#(X) p38: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p39: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p40: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p41: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p42: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p43: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p44: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p45: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p46: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p47: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p48: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p49: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p50: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p51: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p52: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p53: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p54: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p55: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p56: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p57: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p58: mark#(isNatList(X)) -> active#(isNatList(X)) p59: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p60: mark#(length(X)) -> mark#(X) p61: mark#(length(X)) -> active#(length(mark(X))) p62: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p63: mark#(s(X)) -> mark#(X) p64: mark#(U114(X1,X2)) -> mark#(X1) p65: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p66: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p67: mark#(U113(X1,X2,X3)) -> mark#(X1) p68: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p69: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p70: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p71: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p72: mark#(U111(X1,X2,X3)) -> mark#(X1) p73: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p74: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p75: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p76: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p77: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p78: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p79: mark#(isNatIList(X)) -> active#(isNatIList(X)) p80: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p81: mark#(isNat(X)) -> active#(isNat(X)) p82: active#(U114(tt(),L)) -> mark#(s(length(L))) p83: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p84: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p85: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p86: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p87: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p88: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p89: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p90: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p91: mark#(isNatKind(X)) -> active#(isNatKind(X)) p92: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p93: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p94: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p95: mark#(U101(X1,X2,X3)) -> active#(U101(mark(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 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = 141 U96_A(x1) = 109 U95_A(x1,x2) = 109 active#_A(x1) = x1 + 32 mark_A(x1) = max{57, x1 - 95} take_A(x1,x2) = 109 s_A(x1) = 2 cons_A(x1,x2) = 95 U131_A(x1,x2,x3,x4) = 109 isNatIList_A(x1) = 109 U94_A(x1,x2,x3) = 109 |0|_A = 96 U121_A(x1,x2) = 109 U93_A(x1,x2,x3) = 109 length_A(x1) = 109 U111_A(x1,x2,x3) = 109 isNatList_A(x1) = 109 U92_A(x1,x2,x3) = 109 U101_A(x1,x2,x3) = 109 isNatKind_A(x1) = 109 U91_A(x1,x2,x3) = 109 U81_A(x1) = 109 U62_A(x1) = 109 U61_A(x1,x2) = 109 U52_A(x1) = 109 U51_A(x1,x2) = 109 isNatIListKind_A(x1) = 109 U46_A(x1) = 109 U45_A(x1,x2) = 109 U44_A(x1,x2,x3) = 109 U41_A(x1,x2,x3) = 109 U43_A(x1,x2,x3) = 109 isNat_A(x1) = 109 U21_A(x1,x2) = 109 U42_A(x1,x2,x3) = 109 U11_A(x1,x2) = 109 tt_A = 96 U32_A(x1,x2) = 109 U31_A(x1,x2) = 109 U23_A(x1) = 109 U22_A(x1,x2) = 109 U136_A(x1,x2,x3,x4) = 109 U135_A(x1,x2,x3,x4) = 109 U134_A(x1,x2,x3,x4) = 109 U133_A(x1,x2,x3,x4) = 109 U132_A(x1,x2,x3,x4) = 109 U33_A(x1) = 109 U114_A(x1,x2) = 109 U113_A(x1,x2,x3) = 109 U112_A(x1,x2,x3) = 109 U12_A(x1,x2) = 109 U122_A(x1) = 109 U105_A(x1,x2) = 109 U104_A(x1,x2,x3) = 109 U103_A(x1,x2,x3) = 109 U102_A(x1,x2,x3) = 109 active_A(x1) = max{0, x1 - 52} zeros_A = 109 U106_A(x1) = 109 U13_A(x1) = 109 nil_A = 109 U71_A(x1) = 109 2. max/plus interpretations on natural numbers: mark#_A(x1) = 2 U96_A(x1) = 35 U95_A(x1,x2) = 18 active#_A(x1) = max{0, x1 - 16} mark_A(x1) = 28 take_A(x1,x2) = 18 s_A(x1) = 29 cons_A(x1,x2) = 65 U131_A(x1,x2,x3,x4) = 18 isNatIList_A(x1) = 18 U94_A(x1,x2,x3) = 18 |0|_A = 48 U121_A(x1,x2) = 18 U93_A(x1,x2,x3) = 18 length_A(x1) = 18 U111_A(x1,x2,x3) = 18 isNatList_A(x1) = 18 U92_A(x1,x2,x3) = 18 U101_A(x1,x2,x3) = 18 isNatKind_A(x1) = 18 U91_A(x1,x2,x3) = 18 U81_A(x1) = 14 U62_A(x1) = 53 U61_A(x1,x2) = 18 U52_A(x1) = 29 U51_A(x1,x2) = 18 isNatIListKind_A(x1) = 18 U46_A(x1) = 29 U45_A(x1,x2) = 18 U44_A(x1,x2,x3) = 18 U41_A(x1,x2,x3) = 18 U43_A(x1,x2,x3) = 18 isNat_A(x1) = 18 U21_A(x1,x2) = 18 U42_A(x1,x2,x3) = 18 U11_A(x1,x2) = 18 tt_A = 29 U32_A(x1,x2) = 18 U31_A(x1,x2) = 18 U23_A(x1) = 16 U22_A(x1,x2) = 18 U136_A(x1,x2,x3,x4) = 18 U135_A(x1,x2,x3,x4) = 18 U134_A(x1,x2,x3,x4) = 18 U133_A(x1,x2,x3,x4) = 18 U132_A(x1,x2,x3,x4) = 18 U33_A(x1) = 26 U114_A(x1,x2) = 18 U113_A(x1,x2,x3) = 18 U112_A(x1,x2,x3) = 18 U12_A(x1,x2) = 12 U122_A(x1) = 12 U105_A(x1,x2) = 18 U104_A(x1,x2,x3) = 18 U103_A(x1,x2,x3) = 18 U102_A(x1,x2,x3) = 18 active_A(x1) = 28 zeros_A = 0 U106_A(x1) = 29 U13_A(x1) = 66 nil_A = 29 U71_A(x1) = 27 The next rules are strictly ordered: p75 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)) -> active#(U95(mark(X1),X2)) p3: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p4: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p5: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p6: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p7: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) 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)) -> active#(U91(mark(X1),X2,X3)) p11: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p12: mark#(U81(X)) -> mark#(X) p13: mark#(U62(X)) -> mark#(X) p14: mark#(U61(X1,X2)) -> mark#(X1) p15: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p16: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p17: mark#(U52(X)) -> mark#(X) p18: mark#(U51(X1,X2)) -> mark#(X1) p19: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p20: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p21: mark#(U46(X)) -> mark#(X) p22: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p23: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p24: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p25: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p26: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p27: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p28: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p29: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p30: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p31: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p32: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p33: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p34: mark#(U31(X1,X2)) -> mark#(X1) p35: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p36: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p37: mark#(U23(X)) -> mark#(X) p38: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p39: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p40: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p41: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p42: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p43: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p44: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p45: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p46: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p47: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p48: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p49: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p50: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p51: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p52: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p53: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p54: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p55: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p56: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p57: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p58: mark#(isNatList(X)) -> active#(isNatList(X)) p59: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p60: mark#(length(X)) -> mark#(X) p61: mark#(length(X)) -> active#(length(mark(X))) p62: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p63: mark#(s(X)) -> mark#(X) p64: mark#(U114(X1,X2)) -> mark#(X1) p65: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p66: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p67: mark#(U113(X1,X2,X3)) -> mark#(X1) p68: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p69: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p70: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p71: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p72: mark#(U111(X1,X2,X3)) -> mark#(X1) p73: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p74: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p75: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p76: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p77: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p78: mark#(isNatIList(X)) -> active#(isNatIList(X)) p79: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p80: mark#(isNat(X)) -> active#(isNat(X)) p81: active#(U114(tt(),L)) -> mark#(s(length(L))) p82: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p83: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p84: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p85: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p86: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p87: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p88: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p89: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p90: mark#(isNatKind(X)) -> active#(isNatKind(X)) p91: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p92: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p93: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p94: mark#(U101(X1,X2,X3)) -> active#(U101(mark(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, 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} -- 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#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p5: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p6: mark#(isNatKind(X)) -> active#(isNatKind(X)) p7: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p8: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p9: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U114(tt(),L)) -> mark#(s(length(L))) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p18: mark#(isNatIList(X)) -> active#(isNatIList(X)) p19: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p20: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p21: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p22: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p23: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p24: mark#(U111(X1,X2,X3)) -> mark#(X1) p25: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p26: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p27: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p28: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p29: mark#(U113(X1,X2,X3)) -> mark#(X1) p30: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p31: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p32: mark#(U114(X1,X2)) -> mark#(X1) p33: mark#(s(X)) -> mark#(X) p34: mark#(length(X)) -> active#(length(mark(X))) p35: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p36: mark#(length(X)) -> mark#(X) p37: mark#(isNatList(X)) -> active#(isNatList(X)) p38: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p39: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p40: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p41: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p42: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p43: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p44: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p45: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p46: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p47: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p48: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p49: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p50: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p51: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p52: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p53: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p54: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p55: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p56: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p57: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p58: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p59: mark#(U23(X)) -> mark#(X) p60: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p61: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p62: mark#(U31(X1,X2)) -> mark#(X1) p63: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p64: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p65: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p66: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p67: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p68: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p69: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p70: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p71: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p72: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p73: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p74: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p75: mark#(U46(X)) -> mark#(X) p76: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p77: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),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#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p82: mark#(U61(X1,X2)) -> mark#(X1) p83: mark#(U62(X)) -> mark#(X) p84: mark#(U81(X)) -> mark#(X) p85: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p86: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p87: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p88: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p89: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p90: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p91: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p92: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p93: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p94: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = 2669 U96_A(x1) = 345 U101_A(x1,x2,x3) = 345 active#_A(x1) = x1 + 2324 mark_A(x1) = max{165, x1 - 51} U103_A(x1,x2,x3) = 345 tt_A = 345 U104_A(x1,x2,x3) = 345 isNatIListKind_A(x1) = 345 U102_A(x1,x2,x3) = 345 U105_A(x1,x2) = 345 isNat_A(x1) = 345 isNatKind_A(x1) = 345 U11_A(x1,x2) = 345 U12_A(x1,x2) = 345 U111_A(x1,x2,x3) = 345 U112_A(x1,x2,x3) = 345 U113_A(x1,x2,x3) = 345 U114_A(x1,x2) = 345 s_A(x1) = 345 length_A(x1) = 345 U121_A(x1,x2) = 345 U122_A(x1) = 345 isNatIList_A(x1) = 345 U131_A(x1,x2,x3,x4) = 345 U132_A(x1,x2,x3,x4) = 345 U133_A(x1,x2,x3,x4) = 345 U134_A(x1,x2,x3,x4) = 345 U135_A(x1,x2,x3,x4) = 345 U136_A(x1,x2,x3,x4) = 345 cons_A(x1,x2) = 345 take_A(x1,x2) = 345 U21_A(x1,x2) = 345 U22_A(x1,x2) = 345 isNatList_A(x1) = 345 U23_A(x1) = 345 U31_A(x1,x2) = 345 U32_A(x1,x2) = 345 U33_A(x1) = 345 U41_A(x1,x2,x3) = 345 U42_A(x1,x2,x3) = 345 U43_A(x1,x2,x3) = 345 U44_A(x1,x2,x3) = 345 U45_A(x1,x2) = 345 U46_A(x1) = 345 U51_A(x1,x2) = 345 U52_A(x1) = 345 U91_A(x1,x2,x3) = 345 U92_A(x1,x2,x3) = 345 U93_A(x1,x2,x3) = 345 U94_A(x1,x2,x3) = 345 U95_A(x1,x2) = 345 U61_A(x1,x2) = 345 U81_A(x1) = 345 U62_A(x1) = 345 |0|_A = 345 active_A(x1) = max{294, x1 - 56} zeros_A = 351 U106_A(x1) = 345 U13_A(x1) = 345 nil_A = 345 U71_A(x1) = 345 2. max/plus interpretations on natural numbers: mark#_A(x1) = 2 U96_A(x1) = 55 U101_A(x1,x2,x3) = 47 active#_A(x1) = max{0, x1 - 48} mark_A(x1) = 93 U103_A(x1,x2,x3) = 50 tt_A = 35 U104_A(x1,x2,x3) = 50 isNatIListKind_A(x1) = 50 U102_A(x1,x2,x3) = 14 U105_A(x1,x2) = 47 isNat_A(x1) = 50 isNatKind_A(x1) = 50 U11_A(x1,x2) = 50 U12_A(x1,x2) = 45 U111_A(x1,x2,x3) = 50 U112_A(x1,x2,x3) = 50 U113_A(x1,x2,x3) = 50 U114_A(x1,x2) = 50 s_A(x1) = 45 length_A(x1) = 50 U121_A(x1,x2) = 50 U122_A(x1) = 45 isNatIList_A(x1) = 50 U131_A(x1,x2,x3,x4) = 50 U132_A(x1,x2,x3,x4) = 50 U133_A(x1,x2,x3,x4) = 50 U134_A(x1,x2,x3,x4) = 50 U135_A(x1,x2,x3,x4) = 50 U136_A(x1,x2,x3,x4) = 50 cons_A(x1,x2) = 96 take_A(x1,x2) = 50 U21_A(x1,x2) = 50 U22_A(x1,x2) = 50 isNatList_A(x1) = 50 U23_A(x1) = 48 U31_A(x1,x2) = 50 U32_A(x1,x2) = 50 U33_A(x1) = 66 U41_A(x1,x2,x3) = 50 U42_A(x1,x2,x3) = 50 U43_A(x1,x2,x3) = 50 U44_A(x1,x2,x3) = 50 U45_A(x1,x2) = 50 U46_A(x1) = 47 U51_A(x1,x2) = 50 U52_A(x1) = 49 U91_A(x1,x2,x3) = 50 U92_A(x1,x2,x3) = 50 U93_A(x1,x2,x3) = 50 U94_A(x1,x2,x3) = 50 U95_A(x1,x2) = 50 U61_A(x1,x2) = 0 U81_A(x1) = 35 U62_A(x1) = 53 |0|_A = 55 active_A(x1) = 93 zeros_A = 21 U106_A(x1) = 53 U13_A(x1) = 12 nil_A = 55 U71_A(x1) = 55 The next rules are strictly ordered: p2, p4, p14, p80 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: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p3: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p4: mark#(isNatKind(X)) -> active#(isNatKind(X)) p5: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p6: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p7: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p8: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p9: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p10: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p11: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p12: active#(U114(tt(),L)) -> mark#(s(length(L))) p13: mark#(isNat(X)) -> active#(isNat(X)) p14: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p15: mark#(isNatIList(X)) -> active#(isNatIList(X)) p16: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p17: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p18: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p19: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p20: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p21: mark#(U111(X1,X2,X3)) -> mark#(X1) p22: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p23: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p24: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p25: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p26: mark#(U113(X1,X2,X3)) -> mark#(X1) 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#(U114(X1,X2)) -> mark#(X1) p30: mark#(s(X)) -> mark#(X) p31: mark#(length(X)) -> active#(length(mark(X))) p32: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p33: mark#(length(X)) -> mark#(X) p34: mark#(isNatList(X)) -> active#(isNatList(X)) p35: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p36: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p37: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p38: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p39: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p40: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p41: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p42: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p43: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p44: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p45: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p46: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p47: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p48: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p49: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p50: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p51: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p52: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p53: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p54: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p55: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p56: mark#(U23(X)) -> mark#(X) p57: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p58: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p59: mark#(U31(X1,X2)) -> mark#(X1) p60: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p61: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p62: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p63: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p64: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p65: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p66: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p67: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p68: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p69: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p70: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p71: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p72: mark#(U46(X)) -> mark#(X) p73: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p74: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p75: mark#(U51(X1,X2)) -> mark#(X1) p76: mark#(U52(X)) -> mark#(X) p77: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p78: mark#(U61(X1,X2)) -> mark#(X1) p79: mark#(U62(X)) -> mark#(X) p80: mark#(U81(X)) -> mark#(X) p81: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p82: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p83: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p84: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p85: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p86: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p87: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p88: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p89: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p90: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p3: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p4: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p5: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p6: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p7: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) 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)) -> active#(U91(mark(X1),X2,X3)) p11: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p12: mark#(U81(X)) -> mark#(X) p13: mark#(U62(X)) -> mark#(X) p14: mark#(U61(X1,X2)) -> mark#(X1) p15: mark#(U52(X)) -> mark#(X) p16: mark#(U51(X1,X2)) -> mark#(X1) p17: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p18: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p19: mark#(U46(X)) -> mark#(X) p20: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p21: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p22: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p23: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p24: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p25: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p26: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p27: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p28: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p29: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p30: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p31: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p32: mark#(U31(X1,X2)) -> mark#(X1) p33: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p34: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p35: mark#(U23(X)) -> mark#(X) p36: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p37: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p38: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p39: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p40: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p41: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p42: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p43: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p44: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p45: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p46: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p47: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p48: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p49: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p50: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p51: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p52: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p53: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p54: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p55: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p56: mark#(isNatList(X)) -> active#(isNatList(X)) p57: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p58: mark#(length(X)) -> mark#(X) p59: mark#(length(X)) -> active#(length(mark(X))) p60: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p61: mark#(s(X)) -> mark#(X) p62: mark#(U114(X1,X2)) -> mark#(X1) p63: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p64: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p65: mark#(U113(X1,X2,X3)) -> mark#(X1) p66: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p67: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p68: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p69: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p70: mark#(U111(X1,X2,X3)) -> mark#(X1) p71: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p72: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p73: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p74: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p75: mark#(isNatIList(X)) -> active#(isNatIList(X)) p76: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p77: mark#(isNat(X)) -> active#(isNat(X)) p78: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p79: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p80: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p81: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p82: active#(U114(tt(),L)) -> mark#(s(length(L))) p83: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p84: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p85: mark#(isNatKind(X)) -> active#(isNatKind(X)) p86: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p87: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p88: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p89: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p90: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 56} U96_A(x1) = max{225, x1} U95_A(x1,x2) = 814 active#_A(x1) = max{21, x1 - 56} mark_A(x1) = max{71, x1} take_A(x1,x2) = max{1033, x1 + 5, x2 + 962} s_A(x1) = max{82, x1} cons_A(x1,x2) = max{896, x1 + 306, x2} U131_A(x1,x2,x3,x4) = max{x2 + 962, x3 + 5, x4 + 959} isNatIList_A(x1) = x1 + 650 U94_A(x1,x2,x3) = 814 |0|_A = 138 U121_A(x1,x2) = max{x1 + 311, x2 + 382} U93_A(x1,x2,x3) = 814 length_A(x1) = max{139, x1 + 60} U111_A(x1,x2,x3) = max{x1 + 141, x2 + 60, x3 + 366} isNatList_A(x1) = 814 U92_A(x1,x2,x3) = 814 U101_A(x1,x2,x3) = 813 isNatKind_A(x1) = x1 + 88 U91_A(x1,x2,x3) = 814 U81_A(x1) = max{89, x1} U62_A(x1) = max{226, x1 + 81} U61_A(x1,x2) = max{x1, x2 + 1045} U52_A(x1) = max{82, x1} U51_A(x1,x2) = max{x1 + 4, x2 + 83} U46_A(x1) = max{225, x1} U45_A(x1,x2) = max{x1 + 147, x2 + 650} isNatIListKind_A(x1) = max{86, x1 + 83} U44_A(x1,x2,x3) = max{x1 + 567, x2 + 264, x3 + 650} U43_A(x1,x2,x3) = max{x1 + 428, x2 + 346, x3 + 650} U41_A(x1,x2,x3) = max{x1 + 147, x2 + 533, x3 + 650} U42_A(x1,x2,x3) = max{x1 + 445, x2 + 515, x3 + 650} isNat_A(x1) = x1 + 117 U21_A(x1,x2) = x2 + 117 U11_A(x1,x2) = x2 + 161 U32_A(x1,x2) = max{x1 + 84, x2 + 227} tt_A = 225 U31_A(x1,x2) = max{x1, x2 + 228} U23_A(x1) = max{116, x1} U22_A(x1,x2) = x2 + 117 U136_A(x1,x2,x3,x4) = max{1034, x1 + 809, x2 + 962, x3 + 5, x4 + 897} U135_A(x1,x2,x3,x4) = max{968, x1 + 827, x2 + 962, x3 + 5, x4 + 897} U134_A(x1,x2,x3,x4) = max{968, x2 + 962, x3 + 5, x4 + 944} U133_A(x1,x2,x3,x4) = max{1025, x2 + 962, x3 + 5, x4 + 944} U132_A(x1,x2,x3,x4) = max{x1 + 874, x2 + 962, x3 + 5, x4 + 944} U33_A(x1) = max{226, x1 - 732} U114_A(x1,x2) = max{138, x1 + 57, x2 + 60} U113_A(x1,x2,x3) = max{x1 + 249, x2 + 60, x3 + 366} U112_A(x1,x2,x3) = max{x2 + 60, x3 + 366} U104_A(x1,x2,x3) = 435 U122_A(x1) = 294 U103_A(x1,x2,x3) = 591 U12_A(x1,x2) = max{x1 + 2, x2 + 83} U105_A(x1,x2) = 392 active_A(x1) = max{81, x1} zeros_A = 897 U102_A(x1,x2,x3) = 812 U106_A(x1) = 226 U13_A(x1) = max{226, x1 - 732} nil_A = 293 U71_A(x1) = max{227, x1 - 9} 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 46 U95_A(x1,x2) = 49 active#_A(x1) = 0 mark_A(x1) = 23 take_A(x1,x2) = 28 s_A(x1) = 53 cons_A(x1,x2) = 14 U131_A(x1,x2,x3,x4) = 164 isNatIList_A(x1) = 5 U94_A(x1,x2,x3) = 24 |0|_A = 8 U121_A(x1,x2) = 126 U93_A(x1,x2,x3) = 6 length_A(x1) = 51 U111_A(x1,x2,x3) = 6 isNatList_A(x1) = 5 U92_A(x1,x2,x3) = 24 U101_A(x1,x2,x3) = 22 isNatKind_A(x1) = 5 U91_A(x1,x2,x3) = 6 U81_A(x1) = 55 U62_A(x1) = 22 U61_A(x1,x2) = 0 U52_A(x1) = 0 U51_A(x1,x2) = 22 U46_A(x1) = 22 U45_A(x1,x2) = 24 isNatIListKind_A(x1) = 5 U44_A(x1,x2,x3) = 49 U43_A(x1,x2,x3) = 74 U41_A(x1,x2,x3) = 22 U42_A(x1,x2,x3) = 99 isNat_A(x1) = 5 U21_A(x1,x2) = 24 U11_A(x1,x2) = 87 U32_A(x1,x2) = 28 tt_A = 10 U31_A(x1,x2) = 53 U23_A(x1) = 24 U22_A(x1,x2) = 24 U136_A(x1,x2,x3,x4) = 39 U135_A(x1,x2,x3,x4) = 24 U134_A(x1,x2,x3,x4) = 49 U133_A(x1,x2,x3,x4) = 94 U132_A(x1,x2,x3,x4) = 139 U33_A(x1) = 3 U114_A(x1,x2) = 98 U113_A(x1,x2,x3) = 121 U112_A(x1,x2,x3) = 5 U104_A(x1,x2,x3) = 114 U122_A(x1) = 81 U103_A(x1,x2,x3) = 24 U12_A(x1,x2) = 64 U105_A(x1,x2) = 69 active_A(x1) = 23 zeros_A = 0 U102_A(x1,x2,x3) = 0 U106_A(x1) = 24 U13_A(x1) = 59 nil_A = 36 U71_A(x1) = 0 The next rules are strictly ordered: p5, p9, p13, p16, p29, p55, p57, p58, p62, p65, p70, p80, p88, p89, p90 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)) -> active#(U95(mark(X1),X2)) p3: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) 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)) -> active#(U92(mark(X1),X2,X3)) p8: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p9: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p10: mark#(U81(X)) -> mark#(X) p11: mark#(U61(X1,X2)) -> mark#(X1) p12: mark#(U52(X)) -> mark#(X) p13: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p14: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p15: mark#(U46(X)) -> mark#(X) p16: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p17: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p18: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p19: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p20: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p21: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p22: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p23: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p24: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p25: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p26: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p27: mark#(U31(X1,X2)) -> mark#(X1) p28: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p29: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p30: mark#(U23(X)) -> mark#(X) p31: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p32: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p33: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p34: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p35: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p36: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p37: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p38: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p39: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p40: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p41: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p42: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p43: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p44: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p45: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p46: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p47: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p48: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p49: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p50: mark#(isNatList(X)) -> active#(isNatList(X)) p51: mark#(length(X)) -> active#(length(mark(X))) p52: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p53: mark#(s(X)) -> mark#(X) p54: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p55: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p56: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p57: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p58: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p59: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p60: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p61: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p62: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p63: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p64: mark#(isNatIList(X)) -> active#(isNatIList(X)) p65: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p66: mark#(isNat(X)) -> active#(isNat(X)) p67: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p68: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p69: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p70: active#(U114(tt(),L)) -> mark#(s(length(L))) p71: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p72: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p73: mark#(isNatKind(X)) -> active#(isNatKind(X)) p74: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p75: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(isNatKind(X)) -> active#(isNatKind(X)) p3: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p4: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p5: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p6: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p7: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p8: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p9: active#(U114(tt(),L)) -> mark#(s(length(L))) p10: mark#(isNat(X)) -> active#(isNat(X)) p11: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p12: mark#(isNatIList(X)) -> active#(isNatIList(X)) p13: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p14: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p15: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p16: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p17: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p18: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p19: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p20: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p21: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p22: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p23: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p24: mark#(s(X)) -> mark#(X) p25: mark#(length(X)) -> active#(length(mark(X))) p26: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p27: mark#(isNatList(X)) -> active#(isNatList(X)) p28: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p29: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p30: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p31: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p32: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p33: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p34: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p35: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p36: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p37: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p38: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p39: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p40: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p41: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p42: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p43: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p44: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p45: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p46: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p47: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p48: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p49: mark#(U23(X)) -> mark#(X) p50: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p51: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p52: mark#(U31(X1,X2)) -> mark#(X1) p53: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p54: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p55: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p56: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p57: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p58: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p59: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p60: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p61: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p62: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p63: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p64: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p65: mark#(U46(X)) -> mark#(X) p66: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p67: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p68: mark#(U52(X)) -> mark#(X) p69: mark#(U61(X1,X2)) -> mark#(X1) p70: mark#(U81(X)) -> mark#(X) p71: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p72: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p73: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p74: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p75: 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 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = 437 U96_A(x1) = 206 isNatKind_A(x1) = 437 active#_A(x1) = x1 U111_A(x1,x2,x3) = 437 tt_A = 130 U112_A(x1,x2,x3) = 437 isNatIListKind_A(x1) = 437 U103_A(x1,x2,x3) = 0 mark_A(x1) = max{558, x1 + 104} U113_A(x1,x2,x3) = 437 isNat_A(x1) = 437 U114_A(x1,x2) = 437 U104_A(x1,x2,x3) = 66 s_A(x1) = 453 length_A(x1) = 437 U131_A(x1,x2,x3,x4) = 437 U132_A(x1,x2,x3,x4) = 437 isNatIList_A(x1) = 437 U133_A(x1,x2,x3,x4) = 437 U11_A(x1,x2) = 345 U134_A(x1,x2,x3,x4) = 437 U135_A(x1,x2,x3,x4) = 437 U136_A(x1,x2,x3,x4) = 437 cons_A(x1,x2) = 0 take_A(x1,x2) = 437 U21_A(x1,x2) = 437 U22_A(x1,x2) = 437 U23_A(x1) = 454 isNatList_A(x1) = 437 U41_A(x1,x2,x3) = 437 U42_A(x1,x2,x3) = 437 U121_A(x1,x2) = 436 U43_A(x1,x2,x3) = 437 U44_A(x1,x2,x3) = 437 U45_A(x1,x2) = 437 U46_A(x1) = 17 U51_A(x1,x2) = 437 U52_A(x1) = 345 U91_A(x1,x2,x3) = 437 U92_A(x1,x2,x3) = 437 U93_A(x1,x2,x3) = 437 U94_A(x1,x2,x3) = 437 U95_A(x1,x2) = 437 U31_A(x1,x2) = 345 U32_A(x1,x2) = 314 U61_A(x1,x2) = 454 U81_A(x1) = 454 active_A(x1) = max{558, x1 + 13} zeros_A = 118 |0|_A = 345 U101_A(x1,x2,x3) = 454 U102_A(x1,x2,x3) = 66 U105_A(x1,x2) = 429 U106_A(x1) = 222 U12_A(x1,x2) = 454 U13_A(x1) = 259 U122_A(x1) = 454 nil_A = 454 U33_A(x1) = 222 U62_A(x1) = 362 U71_A(x1) = 196 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 59 isNatKind_A(x1) = 65 active#_A(x1) = max{0, x1 - 65} U111_A(x1,x2,x3) = 59 tt_A = 32 U112_A(x1,x2,x3) = 65 isNatIListKind_A(x1) = 54 U103_A(x1,x2,x3) = 48 mark_A(x1) = 63 U113_A(x1,x2,x3) = 58 isNat_A(x1) = 48 U114_A(x1,x2) = 47 U104_A(x1,x2,x3) = 66 s_A(x1) = 60 length_A(x1) = 65 U131_A(x1,x2,x3,x4) = 65 U132_A(x1,x2,x3,x4) = 48 isNatIList_A(x1) = 60 U133_A(x1,x2,x3,x4) = 41 U11_A(x1,x2) = 65 U134_A(x1,x2,x3,x4) = 25 U135_A(x1,x2,x3,x4) = 48 U136_A(x1,x2,x3,x4) = 65 cons_A(x1,x2) = 7 take_A(x1,x2) = 65 U21_A(x1,x2) = 48 U22_A(x1,x2) = 41 U23_A(x1) = 0 isNatList_A(x1) = 65 U41_A(x1,x2,x3) = 48 U42_A(x1,x2,x3) = 65 U121_A(x1,x2) = 66 U43_A(x1,x2,x3) = 58 U44_A(x1,x2,x3) = 48 U45_A(x1,x2) = 41 U46_A(x1) = 64 U51_A(x1,x2) = 62 U52_A(x1) = 55 U91_A(x1,x2,x3) = 58 U92_A(x1,x2,x3) = 65 U93_A(x1,x2,x3) = 62 U94_A(x1,x2,x3) = 48 U95_A(x1,x2) = 48 U31_A(x1,x2) = 48 U32_A(x1,x2) = 62 U61_A(x1,x2) = 48 U81_A(x1) = 60 active_A(x1) = 63 zeros_A = 0 |0|_A = 64 U101_A(x1,x2,x3) = 64 U102_A(x1,x2,x3) = 48 U105_A(x1,x2) = 52 U106_A(x1) = 64 U12_A(x1,x2) = 113 U13_A(x1) = 48 U122_A(x1) = 48 nil_A = 67 U33_A(x1) = 64 U62_A(x1) = 64 U71_A(x1) = 51 The next rules are strictly ordered: p4, p8, p14, p29, p50, p53 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#(isNatKind(X)) -> active#(isNatKind(X)) p3: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p4: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p5: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p6: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p7: active#(U114(tt(),L)) -> mark#(s(length(L))) p8: mark#(isNat(X)) -> active#(isNat(X)) p9: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p10: mark#(isNatIList(X)) -> active#(isNatIList(X)) p11: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p12: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p13: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p14: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p15: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p16: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p17: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p18: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p19: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p20: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p21: mark#(s(X)) -> mark#(X) p22: mark#(length(X)) -> active#(length(mark(X))) p23: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p24: mark#(isNatList(X)) -> active#(isNatList(X)) p25: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p26: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p27: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p28: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p29: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p30: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p31: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p32: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p33: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p34: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p35: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p36: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p37: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p38: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p39: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p40: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p41: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p42: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p43: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p44: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p45: mark#(U23(X)) -> mark#(X) p46: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p47: mark#(U31(X1,X2)) -> mark#(X1) p48: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p49: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p50: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p51: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p52: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p53: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p54: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p55: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p56: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p57: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p58: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p59: mark#(U46(X)) -> mark#(X) p60: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p61: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p62: mark#(U52(X)) -> mark#(X) p63: mark#(U61(X1,X2)) -> mark#(X1) p64: mark#(U81(X)) -> mark#(X) p65: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p66: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p67: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p68: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p69: 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, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p3: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p4: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p5: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p6: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p7: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p8: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p9: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p10: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p11: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p12: mark#(U81(X)) -> mark#(X) p13: mark#(U61(X1,X2)) -> mark#(X1) p14: mark#(U52(X)) -> mark#(X) p15: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p16: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p17: mark#(U46(X)) -> mark#(X) p18: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p19: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p20: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p21: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p22: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p23: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p24: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p25: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p26: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p27: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p28: mark#(U31(X1,X2)) -> mark#(X1) p29: mark#(U23(X)) -> mark#(X) p30: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p31: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p32: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p33: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p34: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p35: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p36: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p37: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p38: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p39: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p40: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p41: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p42: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p43: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p44: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p45: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p46: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p47: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p48: mark#(isNatList(X)) -> active#(isNatList(X)) p49: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p50: mark#(length(X)) -> active#(length(mark(X))) p51: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p52: mark#(s(X)) -> mark#(X) p53: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p54: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p55: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p56: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p57: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p58: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p59: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p60: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p61: mark#(isNatIList(X)) -> active#(isNatIList(X)) p62: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p63: mark#(isNat(X)) -> active#(isNat(X)) p64: active#(U114(tt(),L)) -> mark#(s(length(L))) p65: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p66: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p67: mark#(isNatKind(X)) -> active#(isNatKind(X)) p68: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p69: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 1135} U96_A(x1) = max{1134, x1 + 1} U95_A(x1,x2) = x2 + 4253 active#_A(x1) = max{0, x1 - 1156} mark_A(x1) = max{1130, x1} take_A(x1,x2) = 754 s_A(x1) = max{1129, x1} cons_A(x1,x2) = max{1125, x2 + 375} U131_A(x1,x2,x3,x4) = 732 isNatIList_A(x1) = x1 + 2016 U94_A(x1,x2,x3) = max{x1 + 1167, x3 + 4279} length_A(x1) = 1134 U111_A(x1,x2,x3) = 1134 isNatList_A(x1) = x1 + 4230 U93_A(x1,x2,x3) = max{x1 + 2305, x3 + 4301} U91_A(x1,x2,x3) = max{4583, x3 + 4345} isNatKind_A(x1) = 784 U92_A(x1,x2,x3) = max{4561, x3 + 4323} U81_A(x1) = max{1077, x1} isNatIListKind_A(x1) = max{1125, x1 + 897} U61_A(x1,x2) = max{1077, x1} U52_A(x1) = max{1130, x1} U51_A(x1,x2) = max{1126, x2 + 1124} U46_A(x1) = max{1136, x1 + 1} U45_A(x1,x2) = max{x1 + 1149, x2 + 2280} U41_A(x1,x2,x3) = x3 + 2370 U44_A(x1,x2,x3) = x3 + 2304 isNat_A(x1) = 1133 U21_A(x1,x2) = 1133 U43_A(x1,x2,x3) = x3 + 2326 tt_A = 9 U42_A(x1,x2,x3) = x3 + 2348 U31_A(x1,x2) = x1 U23_A(x1) = max{337, x1} U22_A(x1,x2) = 1133 U136_A(x1,x2,x3,x4) = 596 U135_A(x1,x2,x3,x4) = 1129 U134_A(x1,x2,x3,x4) = 1093 U133_A(x1,x2,x3,x4) = 1113 U132_A(x1,x2,x3,x4) = 708 U114_A(x1,x2) = 1134 U113_A(x1,x2,x3) = 1134 U112_A(x1,x2,x3) = 1134 active_A(x1) = max{1130, x1} zeros_A = 233 |0|_A = 1133 U101_A(x1,x2,x3) = max{2261, x1 + 345} U102_A(x1,x2,x3) = 347 U103_A(x1,x2,x3) = 1129 U104_A(x1,x2,x3) = 1128 U105_A(x1,x2) = 1127 U106_A(x1) = 1126 U11_A(x1,x2) = 1123 U12_A(x1,x2) = 1123 U13_A(x1) = 1122 U121_A(x1,x2) = 0 U122_A(x1) = 1 nil_A = 233 U32_A(x1,x2) = 1130 U33_A(x1) = 1130 U62_A(x1) = 16 U71_A(x1) = 1130 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 140 U95_A(x1,x2) = 102 active#_A(x1) = 0 mark_A(x1) = 94 take_A(x1,x2) = 120 s_A(x1) = 40 cons_A(x1,x2) = 45 U131_A(x1,x2,x3,x4) = 110 isNatIList_A(x1) = 102 U94_A(x1,x2,x3) = 114 length_A(x1) = 0 U111_A(x1,x2,x3) = 126 isNatList_A(x1) = 43 U93_A(x1,x2,x3) = 126 U91_A(x1,x2,x3) = 150 isNatKind_A(x1) = 59 U92_A(x1,x2,x3) = 138 U81_A(x1) = 47 isNatIListKind_A(x1) = 13 U61_A(x1,x2) = 89 U52_A(x1) = 91 U51_A(x1,x2) = 100 U46_A(x1) = 22 U45_A(x1,x2) = 62 U41_A(x1,x2,x3) = 89 U44_A(x1,x2,x3) = 102 isNat_A(x1) = 138 U21_A(x1,x2) = 57 U43_A(x1,x2,x3) = 114 tt_A = 100 U42_A(x1,x2,x3) = 126 U31_A(x1,x2) = 62 U23_A(x1) = 54 U22_A(x1,x2) = 150 U136_A(x1,x2,x3,x4) = 102 U135_A(x1,x2,x3,x4) = 102 U134_A(x1,x2,x3,x4) = 114 U133_A(x1,x2,x3,x4) = 126 U132_A(x1,x2,x3,x4) = 91 U114_A(x1,x2) = 57 U113_A(x1,x2,x3) = 102 U112_A(x1,x2,x3) = 114 active_A(x1) = 94 zeros_A = 59 |0|_A = 0 U101_A(x1,x2,x3) = 141 U102_A(x1,x2,x3) = 99 U103_A(x1,x2,x3) = 58 U104_A(x1,x2,x3) = 58 U105_A(x1,x2) = 132 U106_A(x1) = 92 U11_A(x1,x2) = 98 U12_A(x1,x2) = 100 U13_A(x1) = 111 U121_A(x1,x2) = 101 U122_A(x1) = 59 nil_A = 17 U32_A(x1,x2) = 59 U33_A(x1) = 142 U62_A(x1) = 140 U71_A(x1) = 140 The next rules are strictly ordered: p2, p4, p6, p7, p8, p10, p11, p16, p17, p18, p20, p22, p23, p24, p25, p26, p27, p31, p33, p37, p39, p41, p43, p45, p48, p61 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: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p3: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p4: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p5: mark#(U81(X)) -> mark#(X) p6: mark#(U61(X1,X2)) -> mark#(X1) p7: mark#(U52(X)) -> mark#(X) p8: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p9: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p10: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p11: mark#(U31(X1,X2)) -> mark#(X1) p12: mark#(U23(X)) -> mark#(X) p13: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p14: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p15: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p16: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p17: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p18: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p19: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p20: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p21: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p22: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p23: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p24: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p25: mark#(length(X)) -> active#(length(mark(X))) p26: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p27: mark#(s(X)) -> mark#(X) p28: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p29: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p32: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p33: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p34: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p35: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p36: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p37: mark#(isNat(X)) -> active#(isNat(X)) p38: active#(U114(tt(),L)) -> mark#(s(length(L))) p39: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p40: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p41: mark#(isNatKind(X)) -> active#(isNatKind(X)) p42: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p43: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(isNatKind(X)) -> active#(isNatKind(X)) p3: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p4: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p5: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p6: mark#(isNat(X)) -> active#(isNat(X)) p7: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p8: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p9: active#(U114(tt(),L)) -> mark#(s(length(L))) p10: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p11: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p12: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p13: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p14: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p15: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p16: mark#(s(X)) -> mark#(X) p17: mark#(length(X)) -> active#(length(mark(X))) p18: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p19: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p20: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p21: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p22: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p23: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p24: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p25: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p26: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p27: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p28: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p29: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p30: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p31: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p32: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p33: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p34: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p35: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p36: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p37: mark#(U23(X)) -> mark#(X) p38: mark#(U31(X1,X2)) -> mark#(X1) p39: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p40: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p41: mark#(U52(X)) -> mark#(X) p42: mark#(U61(X1,X2)) -> mark#(X1) p43: mark#(U81(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 2572 isNatKind_A(x1) = 2727 active#_A(x1) = max{0, x1 - 7090} U111_A(x1,x2,x3) = 6929 tt_A = 2572 U112_A(x1,x2,x3) = 5945 isNatIListKind_A(x1) = 6081 U113_A(x1,x2,x3) = 5783 isNat_A(x1) = 7089 U114_A(x1,x2) = 5621 mark_A(x1) = max{2717, x1 + 150} s_A(x1) = 3979 length_A(x1) = 7090 U131_A(x1,x2,x3,x4) = 6928 U132_A(x1,x2,x3,x4) = 6766 U133_A(x1,x2,x3,x4) = 6457 U134_A(x1,x2,x3,x4) = 5135 U135_A(x1,x2,x3,x4) = 4974 U136_A(x1,x2,x3,x4) = 4665 cons_A(x1,x2) = 4503 take_A(x1,x2) = 7090 U21_A(x1,x2) = 6928 U22_A(x1,x2) = 4231 U23_A(x1) = 2734 U51_A(x1,x2) = 5755 U52_A(x1) = 5594 isNatIList_A(x1) = 7092 U41_A(x1,x2,x3) = 5593 U81_A(x1) = 2572 isNatList_A(x1) = 12764 U31_A(x1,x2) = 3406 U61_A(x1,x2) = 3041 active_A(x1) = max{2722, x1 - 11} zeros_A = 4665 |0|_A = 2572 U101_A(x1,x2,x3) = 12603 U102_A(x1,x2,x3) = 12442 U103_A(x1,x2,x3) = 12281 U104_A(x1,x2,x3) = 12119 U105_A(x1,x2) = 11958 U106_A(x1) = 7280 U11_A(x1,x2) = 5453 U12_A(x1,x2) = 5292 U13_A(x1) = 5130 U121_A(x1,x2) = 6929 U122_A(x1) = 2572 nil_A = 2572 U32_A(x1,x2) = 3244 U33_A(x1) = 2572 U42_A(x1,x2,x3) = 2735 U43_A(x1,x2,x3) = 2573 U44_A(x1,x2,x3) = 2572 U45_A(x1,x2) = 2572 U46_A(x1) = 2572 U62_A(x1) = 2879 U71_A(x1) = 2572 U91_A(x1,x2,x3) = 9286 U92_A(x1,x2,x3) = 9125 U93_A(x1,x2,x3) = 8961 U94_A(x1,x2,x3) = 5292 U95_A(x1,x2) = 5130 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 53 isNatKind_A(x1) = 48 active#_A(x1) = 0 U111_A(x1,x2,x3) = 84 tt_A = 33 U112_A(x1,x2,x3) = 68 isNatIListKind_A(x1) = 48 U113_A(x1,x2,x3) = 48 isNat_A(x1) = 49 U114_A(x1,x2) = 51 mark_A(x1) = 131 s_A(x1) = 19 length_A(x1) = 50 U131_A(x1,x2,x3,x4) = 50 U132_A(x1,x2,x3,x4) = 50 U133_A(x1,x2,x3,x4) = 50 U134_A(x1,x2,x3,x4) = 48 U135_A(x1,x2,x3,x4) = 48 U136_A(x1,x2,x3,x4) = 48 cons_A(x1,x2) = 74 take_A(x1,x2) = 49 U21_A(x1,x2) = 68 U22_A(x1,x2) = 48 U23_A(x1) = 26 U51_A(x1,x2) = 51 U52_A(x1) = 51 isNatIList_A(x1) = 112 U41_A(x1,x2,x3) = 92 U81_A(x1) = 168 isNatList_A(x1) = 51 U31_A(x1,x2) = 92 U61_A(x1,x2) = 71 active_A(x1) = 131 zeros_A = 51 |0|_A = 84 U101_A(x1,x2,x3) = 74 U102_A(x1,x2,x3) = 54 U103_A(x1,x2,x3) = 0 U104_A(x1,x2,x3) = 74 U105_A(x1,x2) = 54 U106_A(x1) = 72 U11_A(x1,x2) = 53 U12_A(x1,x2) = 53 U13_A(x1) = 22 U121_A(x1,x2) = 109 U122_A(x1) = 96 nil_A = 74 U32_A(x1,x2) = 206 U33_A(x1) = 184 U42_A(x1,x2,x3) = 72 U43_A(x1,x2,x3) = 72 U44_A(x1,x2,x3) = 50 U45_A(x1,x2) = 28 U46_A(x1) = 72 U62_A(x1) = 51 U71_A(x1) = 151 U91_A(x1,x2,x3) = 53 U92_A(x1,x2,x3) = 53 U93_A(x1,x2,x3) = 53 U94_A(x1,x2,x3) = 53 U95_A(x1,x2) = 72 The next rules are strictly ordered: p32 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#(isNatKind(X)) -> active#(isNatKind(X)) p3: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p4: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p5: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p6: mark#(isNat(X)) -> active#(isNat(X)) p7: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p8: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p9: active#(U114(tt(),L)) -> mark#(s(length(L))) p10: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p11: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p12: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p13: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p14: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p15: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p16: mark#(s(X)) -> mark#(X) p17: mark#(length(X)) -> active#(length(mark(X))) p18: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p19: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p20: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p21: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p22: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p23: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p24: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p25: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p26: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p27: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p28: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p29: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p30: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p31: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p32: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p33: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p34: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p35: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p36: mark#(U23(X)) -> mark#(X) p37: mark#(U31(X1,X2)) -> mark#(X1) p38: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p39: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p40: mark#(U52(X)) -> mark#(X) p41: mark#(U61(X1,X2)) -> mark#(X1) p42: mark#(U81(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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U81(X)) -> mark#(X) p3: mark#(U61(X1,X2)) -> mark#(X1) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p6: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p7: mark#(U31(X1,X2)) -> mark#(X1) p8: mark#(U23(X)) -> mark#(X) p9: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p12: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p13: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p14: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p15: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p16: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p17: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p18: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p19: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p20: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p21: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p22: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p23: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p24: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p25: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p26: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p27: mark#(length(X)) -> active#(length(mark(X))) p28: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p29: mark#(s(X)) -> mark#(X) p30: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p33: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U114(tt(),L)) -> mark#(s(length(L))) p36: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p37: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p38: mark#(isNat(X)) -> active#(isNat(X)) p39: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p40: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p41: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p42: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = 29 U96_A(x1) = 24 U81_A(x1) = 24 U61_A(x1,x2) = 24 U52_A(x1) = 24 U51_A(x1,x2) = 24 active#_A(x1) = x1 + 5 mark_A(x1) = max{78, x1 - 5} take_A(x1,x2) = 24 s_A(x1) = 21 cons_A(x1,x2) = 22 U131_A(x1,x2,x3,x4) = 24 isNatIList_A(x1) = 24 U31_A(x1,x2) = 24 U23_A(x1) = 24 U22_A(x1,x2) = 24 length_A(x1) = 24 U111_A(x1,x2,x3) = 24 isNatList_A(x1) = 24 U21_A(x1,x2) = 24 isNatKind_A(x1) = 24 isNat_A(x1) = 24 U136_A(x1,x2,x3,x4) = 24 tt_A = 24 isNatIListKind_A(x1) = 24 U135_A(x1,x2,x3,x4) = 24 U134_A(x1,x2,x3,x4) = 24 U133_A(x1,x2,x3,x4) = 24 U132_A(x1,x2,x3,x4) = 24 U114_A(x1,x2) = 24 U113_A(x1,x2,x3) = 24 U112_A(x1,x2,x3) = 24 active_A(x1) = x1 + 54 zeros_A = 24 |0|_A = 23 U101_A(x1,x2,x3) = 24 U102_A(x1,x2,x3) = 24 U103_A(x1,x2,x3) = 24 U104_A(x1,x2,x3) = 24 U105_A(x1,x2) = 24 U106_A(x1) = 24 U11_A(x1,x2) = 24 U12_A(x1,x2) = 24 U13_A(x1) = 24 U121_A(x1,x2) = 24 U122_A(x1) = 24 nil_A = 24 U32_A(x1,x2) = 24 U33_A(x1) = 24 U41_A(x1,x2,x3) = 24 U42_A(x1,x2,x3) = 24 U43_A(x1,x2,x3) = 24 U44_A(x1,x2,x3) = 24 U45_A(x1,x2) = 24 U46_A(x1) = 24 U62_A(x1) = 24 U71_A(x1) = 24 U91_A(x1,x2,x3) = 24 U92_A(x1,x2,x3) = 24 U93_A(x1,x2,x3) = 24 U94_A(x1,x2,x3) = 24 U95_A(x1,x2) = 24 2. max/plus interpretations on natural numbers: mark#_A(x1) = 53 U96_A(x1) = 18 U81_A(x1) = 9 U61_A(x1,x2) = 18 U52_A(x1) = 18 U51_A(x1,x2) = 18 active#_A(x1) = x1 + 35 mark_A(x1) = 7 take_A(x1,x2) = 18 s_A(x1) = 21 cons_A(x1,x2) = 19 U131_A(x1,x2,x3,x4) = 18 isNatIList_A(x1) = 2 U31_A(x1,x2) = 18 U23_A(x1) = 17 U22_A(x1,x2) = 18 length_A(x1) = 18 U111_A(x1,x2,x3) = 18 isNatList_A(x1) = 4 U21_A(x1,x2) = 18 isNatKind_A(x1) = 18 isNat_A(x1) = 18 U136_A(x1,x2,x3,x4) = 18 tt_A = 8 isNatIListKind_A(x1) = 17 U135_A(x1,x2,x3,x4) = 18 U134_A(x1,x2,x3,x4) = 18 U133_A(x1,x2,x3,x4) = 18 U132_A(x1,x2,x3,x4) = 18 U114_A(x1,x2) = 18 U113_A(x1,x2,x3) = 18 U112_A(x1,x2,x3) = 18 active_A(x1) = max{7, x1 - 11} zeros_A = 9 |0|_A = 36 U101_A(x1,x2,x3) = 18 U102_A(x1,x2,x3) = 17 U103_A(x1,x2,x3) = 18 U104_A(x1,x2,x3) = 18 U105_A(x1,x2) = 18 U106_A(x1) = 18 U11_A(x1,x2) = 18 U12_A(x1,x2) = 18 U13_A(x1) = 18 U121_A(x1,x2) = 9 U122_A(x1) = 18 nil_A = 11 U32_A(x1,x2) = 0 U33_A(x1) = 18 U41_A(x1,x2,x3) = 18 U42_A(x1,x2,x3) = 10 U43_A(x1,x2,x3) = 0 U44_A(x1,x2,x3) = 18 U45_A(x1,x2) = 18 U46_A(x1) = 18 U62_A(x1) = 17 U71_A(x1) = 18 U91_A(x1,x2,x3) = 10 U92_A(x1,x2,x3) = 18 U93_A(x1,x2,x3) = 18 U94_A(x1,x2,x3) = 18 U95_A(x1,x2) = 18 The next rules are strictly ordered: p40 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#(U81(X)) -> mark#(X) p3: mark#(U61(X1,X2)) -> mark#(X1) p4: mark#(U52(X)) -> mark#(X) p5: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p6: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p7: mark#(U31(X1,X2)) -> mark#(X1) p8: mark#(U23(X)) -> mark#(X) p9: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p12: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p13: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p14: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p15: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p16: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p17: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p18: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p19: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p20: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p21: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p22: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p23: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p24: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p25: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p26: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p27: mark#(length(X)) -> active#(length(mark(X))) p28: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p29: mark#(s(X)) -> mark#(X) p30: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p33: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U114(tt(),L)) -> mark#(s(length(L))) p36: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p37: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p38: mark#(isNat(X)) -> active#(isNat(X)) p39: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p40: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p41: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(isNatKind(X)) -> active#(isNatKind(X)) p3: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p4: mark#(isNat(X)) -> active#(isNat(X)) p5: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p6: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p7: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p8: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p9: active#(U114(tt(),L)) -> mark#(s(length(L))) p10: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p11: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p12: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p13: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p14: mark#(s(X)) -> mark#(X) p15: mark#(length(X)) -> active#(length(mark(X))) p16: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p17: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p18: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p19: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p20: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p21: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p22: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p23: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p24: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p25: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p26: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p27: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p28: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p29: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p30: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p31: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p32: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p33: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p34: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p35: mark#(U23(X)) -> mark#(X) p36: mark#(U31(X1,X2)) -> mark#(X1) p37: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p38: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p39: mark#(U52(X)) -> mark#(X) p40: mark#(U61(X1,X2)) -> mark#(X1) p41: mark#(U81(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = x1 U96_A(x1) = max{357, x1 + 1} isNatKind_A(x1) = x1 + 760 active#_A(x1) = max{178, x1} U111_A(x1,x2,x3) = max{x1 + 592, x2 + 949} tt_A = 754 U112_A(x1,x2,x3) = max{1346, x2 + 949} isNatIListKind_A(x1) = x1 + 745 isNat_A(x1) = x1 + 1168 U113_A(x1,x2,x3) = max{1346, x2 + 949} mark_A(x1) = max{353, x1} U114_A(x1,x2) = max{1346, x2 + 949} s_A(x1) = max{1345, x1 + 34} length_A(x1) = max{1311, x1 + 915} U131_A(x1,x2,x3,x4) = max{949, x3 + 477} U132_A(x1,x2,x3,x4) = max{949, x3 + 477} U133_A(x1,x2,x3,x4) = max{881, x3 + 477} U134_A(x1,x2,x3,x4) = max{881, x3 + 477} U135_A(x1,x2,x3,x4) = max{880, x3 + 477} U136_A(x1,x2,x3,x4) = max{842, x3 + 477} cons_A(x1,x2) = max{179, x2 + 34} take_A(x1,x2) = max{796, x1 + 443} U21_A(x1,x2) = x2 + 1202 U22_A(x1,x2) = x2 + 1177 U23_A(x1) = max{1176, x1 + 9} U51_A(x1,x2) = x2 + 778 U52_A(x1) = max{753, x1 + 32} U81_A(x1) = max{386, x1 + 33} isNatList_A(x1) = max{356, x1 + 318} U31_A(x1,x2) = max{x1 + 790, x2 + 1144} isNatIList_A(x1) = x1 + 1535 U61_A(x1,x2) = max{354, x1 + 1} active_A(x1) = max{353, x1} zeros_A = 179 |0|_A = 352 U101_A(x1,x2,x3) = max{352, x1} U102_A(x1,x2,x3) = 754 U103_A(x1,x2,x3) = 754 U104_A(x1,x2,x3) = 754 U105_A(x1,x2) = 754 U106_A(x1) = 754 U11_A(x1,x2) = max{2479, x2 + 318} U12_A(x1,x2) = max{2479, x2 + 318} U13_A(x1) = x1 U121_A(x1,x2) = 796 U122_A(x1) = 437 nil_A = 437 U32_A(x1,x2) = max{752, x1 + 399, x2 + 670} U33_A(x1) = max{753, x1 + 352} U41_A(x1,x2,x3) = 1568 U42_A(x1,x2,x3) = 1567 U43_A(x1,x2,x3) = 1317 U44_A(x1,x2,x3) = 963 U45_A(x1,x2) = 962 U46_A(x1) = 962 U62_A(x1) = 754 U71_A(x1) = 754 U91_A(x1,x2,x3) = max{355, x3 + 351} U92_A(x1,x2,x3) = max{354, x3 + 350} U93_A(x1,x2,x3) = max{354, x1 - 400, x3 + 350} U94_A(x1,x2,x3) = max{354, x1 - 396, x3 + 349} U95_A(x1,x2) = max{357, x2 + 348} 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = 16 isNatKind_A(x1) = 21 active#_A(x1) = 0 U111_A(x1,x2,x3) = 29 tt_A = 1 U112_A(x1,x2,x3) = 38 isNatIListKind_A(x1) = 0 isNat_A(x1) = 16 U113_A(x1,x2,x3) = 16 mark_A(x1) = 12 U114_A(x1,x2) = 97 s_A(x1) = 75 length_A(x1) = 28 U131_A(x1,x2,x3,x4) = 89 U132_A(x1,x2,x3,x4) = 67 U133_A(x1,x2,x3,x4) = 45 U134_A(x1,x2,x3,x4) = 23 U135_A(x1,x2,x3,x4) = 57 U136_A(x1,x2,x3,x4) = 35 cons_A(x1,x2) = 13 take_A(x1,x2) = 7 U21_A(x1,x2) = 38 U22_A(x1,x2) = 16 U23_A(x1) = 38 U51_A(x1,x2) = 38 U52_A(x1) = 16 U81_A(x1) = 13 isNatList_A(x1) = 3 U31_A(x1,x2) = 0 isNatIList_A(x1) = 11 U61_A(x1,x2) = 0 active_A(x1) = 12 zeros_A = 13 |0|_A = 87 U101_A(x1,x2,x3) = 22 U102_A(x1,x2,x3) = 0 U103_A(x1,x2,x3) = 13 U104_A(x1,x2,x3) = 0 U105_A(x1,x2) = 0 U106_A(x1) = 0 U11_A(x1,x2) = 13 U12_A(x1,x2) = 11 U13_A(x1) = 11 U121_A(x1,x2) = 13 U122_A(x1) = 43 nil_A = 0 U32_A(x1,x2) = 13 U33_A(x1) = 23 U41_A(x1,x2,x3) = 0 U42_A(x1,x2,x3) = 22 U43_A(x1,x2,x3) = 0 U44_A(x1,x2,x3) = 0 U45_A(x1,x2) = 11 U46_A(x1) = 0 U62_A(x1) = 23 U71_A(x1) = 13 U91_A(x1,x2,x3) = 0 U92_A(x1,x2,x3) = 0 U93_A(x1,x2,x3) = 0 U94_A(x1,x2,x3) = 0 U95_A(x1,x2) = 0 The next rules are strictly ordered: p1, p14, p24, p28, p32, p35, p36, p39, p40, p41 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(isNatKind(X)) -> active#(isNatKind(X)) p2: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p3: mark#(isNat(X)) -> active#(isNat(X)) p4: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p5: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p6: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p7: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p8: active#(U114(tt(),L)) -> mark#(s(length(L))) p9: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p10: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p11: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p12: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p13: mark#(length(X)) -> active#(length(mark(X))) p14: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p15: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p16: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p17: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p18: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p19: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p20: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p21: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p22: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p23: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p24: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p25: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p26: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p27: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p28: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p29: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p30: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p31: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(isNatKind(X)) -> active#(isNatKind(X)) p2: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p3: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p4: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p5: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p6: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p7: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p8: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p9: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p10: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p11: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p12: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p13: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p14: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p15: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p16: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p17: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p18: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p19: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p20: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p21: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(length(X)) -> active#(length(mark(X))) p24: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p25: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p26: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p27: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p28: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p29: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p30: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p31: mark#(isNat(X)) -> active#(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 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 697} isNatKind_A(x1) = 696 active#_A(x1) = max{0, x1 - 760} take_A(x1,x2) = 3947 s_A(x1) = 91 cons_A(x1,x2) = 0 U131_A(x1,x2,x3,x4) = 3859 isNatIList_A(x1) = 4453 U51_A(x1,x2) = 724 mark_A(x1) = x1 + 85 length_A(x1) = 5911 U111_A(x1,x2,x3) = 762 isNatList_A(x1) = 5069 U22_A(x1,x2) = 786 isNat_A(x1) = 1886 U21_A(x1,x2) = 1799 tt_A = 0 U23_A(x1) = 699 U136_A(x1,x2,x3,x4) = 713 U135_A(x1,x2,x3,x4) = 800 U134_A(x1,x2,x3,x4) = 2776 U133_A(x1,x2,x3,x4) = 2928 U132_A(x1,x2,x3,x4) = 3015 isNatIListKind_A(x1) = 812 U114_A(x1,x2) = 248 U113_A(x1,x2,x3) = 335 U112_A(x1,x2,x3) = 449 active_A(x1) = max{9, x1 - 2} zeros_A = 603 |0|_A = 592 U101_A(x1,x2,x3) = 4981 U102_A(x1,x2,x3) = 4893 U103_A(x1,x2,x3) = 4805 U104_A(x1,x2,x3) = 4717 U105_A(x1,x2) = 4629 U106_A(x1) = 176 U11_A(x1,x2) = 1799 U12_A(x1,x2) = 900 U13_A(x1) = 88 U121_A(x1,x2) = 3860 U122_A(x1) = 87 nil_A = 0 U31_A(x1,x2) = 986 U32_A(x1,x2) = 176 U33_A(x1) = 88 U41_A(x1,x2,x3) = 1423 U42_A(x1,x2,x3) = 1336 U43_A(x1,x2,x3) = 1249 U44_A(x1,x2,x3) = 358 U45_A(x1,x2) = 261 U46_A(x1) = 174 U52_A(x1) = 171 U61_A(x1,x2) = 724 U62_A(x1) = 87 U71_A(x1) = 609 U81_A(x1) = 97 U91_A(x1,x2,x3) = 2241 U92_A(x1,x2,x3) = 2153 U93_A(x1,x2,x3) = 2065 U94_A(x1,x2,x3) = 1977 U95_A(x1,x2) = 176 U96_A(x1) = 88 2. max/plus interpretations on natural numbers: mark#_A(x1) = 0 isNatKind_A(x1) = 40 active#_A(x1) = 0 take_A(x1,x2) = 0 s_A(x1) = 53 cons_A(x1,x2) = 55 U131_A(x1,x2,x3,x4) = 49 isNatIList_A(x1) = 55 U51_A(x1,x2) = 49 mark_A(x1) = max{34, x1 + 9} length_A(x1) = 52 U111_A(x1,x2,x3) = 66 isNatList_A(x1) = 38 U22_A(x1,x2) = 37 isNat_A(x1) = 53 U21_A(x1,x2) = 44 tt_A = 23 U23_A(x1) = 40 U136_A(x1,x2,x3,x4) = 44 U135_A(x1,x2,x3,x4) = 53 U134_A(x1,x2,x3,x4) = 4 U133_A(x1,x2,x3,x4) = 23 U132_A(x1,x2,x3,x4) = 42 isNatIListKind_A(x1) = 40 U114_A(x1,x2) = 49 U113_A(x1,x2,x3) = 55 U112_A(x1,x2,x3) = 57 active_A(x1) = 63 zeros_A = 0 |0|_A = 44 U101_A(x1,x2,x3) = 44 U102_A(x1,x2,x3) = 27 U103_A(x1,x2,x3) = 19 U104_A(x1,x2,x3) = 0 U105_A(x1,x2) = 95 U106_A(x1) = 40 U11_A(x1,x2) = 42 U12_A(x1,x2) = 44 U13_A(x1) = 84 U121_A(x1,x2) = 0 U122_A(x1) = 42 nil_A = 53 U31_A(x1,x2) = 55 U32_A(x1,x2) = 42 U33_A(x1) = 82 U41_A(x1,x2,x3) = 38 U42_A(x1,x2,x3) = 0 U43_A(x1,x2,x3) = 44 U44_A(x1,x2,x3) = 27 U45_A(x1,x2) = 97 U46_A(x1) = 40 U52_A(x1) = 40 U61_A(x1,x2) = 74 U62_A(x1) = 55 U71_A(x1) = 40 U81_A(x1) = 40 U91_A(x1,x2,x3) = 44 U92_A(x1,x2,x3) = 0 U93_A(x1,x2,x3) = 0 U94_A(x1,x2,x3) = 44 U95_A(x1,x2) = 27 U96_A(x1) = 40 The next rules are strictly ordered: p2, p3, p4, p5, p6, p7, p8, p9, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p23, p28, p30, p31 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(isNatKind(X)) -> active#(isNatKind(X)) p2: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p3: active#(U114(tt(),L)) -> mark#(s(length(L))) p4: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p5: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p6: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p7: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p8: mark#(U112(X1,X2,X3)) -> active#(U112(mark(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, p6, p7, p8} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(isNatKind(X)) -> active#(isNatKind(X)) p2: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p3: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p4: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p5: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p6: active#(U114(tt(),L)) -> mark#(s(length(L))) p7: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p8: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 136 isNatKind_A(x1) = x1 + 1718 active#_A(x1) = x1 + 113 U112_A(x1,x2,x3) = 3515 tt_A = 20 U113_A(x1,x2,x3) = 2268 isNat_A(x1) = x1 + 629 mark_A(x1) = max{640, x1 + 620} U114_A(x1,x2) = 529 s_A(x1) = 505 length_A(x1) = 3717 U136_A(x1,x2,x3,x4) = 1087 cons_A(x1,x2) = max{346, x2 - 135} take_A(x1,x2) = 1198 active_A(x1) = x1 + 602 zeros_A = 385 |0|_A = 39 U101_A(x1,x2,x3) = 2218 U102_A(x1,x2,x3) = 844 U103_A(x1,x2,x3) = 825 isNatIListKind_A(x1) = max{804, x1 + 789} U104_A(x1,x2,x3) = 327 U105_A(x1,x2) = 57 U106_A(x1) = 38 isNatIList_A(x1) = max{1543, x1 + 903} U11_A(x1,x2) = 520 U12_A(x1,x2) = 336 U111_A(x1,x2,x3) = 3698 U13_A(x1) = 38 isNatList_A(x1) = x1 + 1039 U121_A(x1,x2) = 855 U122_A(x1) = 39 nil_A = 0 U131_A(x1,x2,x3,x4) = 1180 U132_A(x1,x2,x3,x4) = 1161 U133_A(x1,x2,x3,x4) = 1143 U134_A(x1,x2,x3,x4) = 1125 U135_A(x1,x2,x3,x4) = 1106 U21_A(x1,x2) = 75 U22_A(x1,x2) = 56 U23_A(x1) = 38 U31_A(x1,x2) = x2 + 688 U32_A(x1,x2) = 488 U33_A(x1) = 466 U41_A(x1,x2,x3) = max{1232, x3 + 749} U42_A(x1,x2,x3) = x3 + 730 U43_A(x1,x2,x3) = x3 + 711 U44_A(x1,x2,x3) = max{511, x3 + 509} U45_A(x1,x2) = max{490, x2 + 488} U46_A(x1) = 39 U51_A(x1,x2) = x2 + 636 U52_A(x1) = 39 U61_A(x1,x2) = 346 U62_A(x1) = 39 U71_A(x1) = 1109 U81_A(x1) = 482 U91_A(x1,x2,x3) = max{902, x3 + 885} U92_A(x1,x2,x3) = max{884, x3 + 867} U93_A(x1,x2,x3) = x3 + 682 U94_A(x1,x2,x3) = x3 + 663 U95_A(x1,x2) = max{642, x2 + 159} U96_A(x1) = 39 2. max/plus interpretations on natural numbers: mark#_A(x1) = max{147, x1 - 11} isNatKind_A(x1) = max{174, x1 + 12} active#_A(x1) = max{0, x1 - 11} U112_A(x1,x2,x3) = 189 tt_A = 138 U113_A(x1,x2,x3) = 173 isNat_A(x1) = max{154, x1 + 128} mark_A(x1) = 136 U114_A(x1,x2) = 157 s_A(x1) = 16 length_A(x1) = 132 U136_A(x1,x2,x3,x4) = 128 cons_A(x1,x2) = 112 take_A(x1,x2) = 144 active_A(x1) = max{21, x1 - 7} zeros_A = 140 |0|_A = 14 U101_A(x1,x2,x3) = 143 U102_A(x1,x2,x3) = 142 U103_A(x1,x2,x3) = 126 isNatIListKind_A(x1) = 152 U104_A(x1,x2,x3) = 144 U105_A(x1,x2) = 142 U106_A(x1) = 154 isNatIList_A(x1) = 118 U11_A(x1,x2) = 44 U12_A(x1,x2) = 28 U111_A(x1,x2,x3) = 110 U13_A(x1) = 154 isNatList_A(x1) = max{120, x1 - 16} U121_A(x1,x2) = 128 U122_A(x1) = 29 nil_A = 142 U131_A(x1,x2,x3,x4) = 14 U132_A(x1,x2,x3,x4) = 144 U133_A(x1,x2,x3,x4) = 158 U134_A(x1,x2,x3,x4) = 142 U135_A(x1,x2,x3,x4) = 144 U21_A(x1,x2) = 121 U22_A(x1,x2) = 293 U23_A(x1) = 144 U31_A(x1,x2) = 102 U32_A(x1,x2) = 170 U33_A(x1) = 154 U41_A(x1,x2,x3) = 78 U42_A(x1,x2,x3) = 62 U43_A(x1,x2,x3) = 46 U44_A(x1,x2,x3) = 30 U45_A(x1,x2) = 14 U46_A(x1) = 142 U51_A(x1,x2) = 136 U52_A(x1) = 120 U61_A(x1,x2) = 142 U62_A(x1) = 136 U71_A(x1) = 128 U81_A(x1) = 138 U91_A(x1,x2,x3) = 143 U92_A(x1,x2,x3) = 129 U93_A(x1,x2,x3) = 115 U94_A(x1,x2,x3) = 142 U95_A(x1,x2) = 126 U96_A(x1) = 14 The next rules are strictly ordered: p1, p2, p3, p4, p5, p6, p7, p8 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: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x1 + 3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p1, p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(X1,X2,mark(X3)) -> U102#(X1,X2,X3) p2: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p3: 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 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#(X1,X2,mark(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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = max{1, x1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 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#(X1,X2,mark(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#(X1,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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#(X1,X2,mark(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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: isNatKind#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: isNatKind#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x1 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(X1,X2,mark(X3)) -> U103#(X1,X2,X3) p2: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p3: 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 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#(X1,X2,mark(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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U103#(X1,X2,mark(X3)) -> U103#(X1,X2,X3) p2: 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 estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(X1,X2,mark(X3)) -> U103#(X1,X2,X3) p2: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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#(X1,X2,mark(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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: isNatIListKind#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: isNatIListKind#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x3 mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = max{2, x2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = x1 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U105#_A(x1,x2) = x2 + 3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U105#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U105#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U105#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U105#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U105#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: isNat#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: isNat#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U106#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U106#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: isNatIList#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: isNatIList#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U12#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U12#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U12#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U12#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U12#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U12#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 1 active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = max{1, x2} mark_A(x1) = max{1, x1} active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: 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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 1 active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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#(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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U114#_A(x1,x2) = x2 + 3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U114#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U114#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U114#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U114#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U114#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: s#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: s#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: length#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: length#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U13#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U13#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: isNatList#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: isNatList#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U122#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U122#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p8 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,X3,mark(X4)) -> U132#(X1,X2,X3,X4) p7: 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 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,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p1, p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,X3,mark(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) p5: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,mark(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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x4 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,mark(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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x3 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 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: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p2: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p2: 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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = max{2, x3} mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: 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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x2 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p4, p8 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#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p6: 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 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,mark(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p4: U133#(active(X1),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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = max{2, x3} mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 3 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 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: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p4: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p5: 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} -- 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#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p5: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x3 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: 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#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,X2,X3,mark(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#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p3: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p4: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 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: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p3: 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} -- 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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = max{1, x4} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 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: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: 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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = max{2, x1} mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x4 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p8 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,X3,mark(X4)) -> U134#(X1,X2,X3,X4) p7: 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 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,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p1, p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,X3,mark(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) p5: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,X2,mark(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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x4 + 2 mark_A(x1) = x1 + 1 active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 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: U134#(X1,X2,mark(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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,X2,mark(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) p4: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = max{4, x3 + 2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p3: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,X3,active(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x3 mark_A(x1) = x1 + 1 active_A(x1) = 0 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 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,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} -- 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x2 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x4 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p8 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,X3,mark(X4)) -> U135#(X1,X2,X3,X4) p7: 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 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,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p1, p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,X3,mark(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) p5: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,mark(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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x4 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,mark(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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x3 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 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: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p2: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p2: 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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = max{2, x3} mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: 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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x2 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p4, p8 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#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p6: 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 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,mark(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p4: U136#(active(X1),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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = max{2, x3} mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 3 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 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: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p4: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p5: 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} -- 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#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p5: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x3 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: 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#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,X2,X3,mark(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#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p3: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p4: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 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: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p3: 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} -- 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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = max{1, x4} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 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: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: 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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = max{2, x1} mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x4 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: cons#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: cons#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: cons#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: cons#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: cons#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: cons#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: take#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: take#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: take#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: take#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: take#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: take#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U22#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U22#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U22#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U22#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U22#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U22#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U23#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U23#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U32#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U32#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U32#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U32#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U32#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U32#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U33#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U33#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 3 2. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = max{2, x2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = x1 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 1 active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = max{2, x2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: 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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 3 2. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x2 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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#(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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U45#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U45#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U45#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U45#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U45#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U45#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U46#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U46#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U52#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U52#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U62#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U62#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 3 2. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = max{1, x2} mark_A(x1) = max{1, x1} active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: 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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 1 active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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#(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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x3 mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x2 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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#(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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U95#_A(x1,x2) = x2 + 3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U95#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U95#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U95#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U95#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U95#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U96#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U96#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U11#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U11#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U11#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U11#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U11#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U11#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U21#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U21#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U21#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U21#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U21#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U21#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U31#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U31#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U31#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U31#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U31#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U31#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 1 active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = max{2, x2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U51#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U51#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U51#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U51#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U51#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U51#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U61#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U61#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U61#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U61#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U61#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U61#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U71#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U71#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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 monotone reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U81#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 2. max/plus interpretations on natural numbers: U81#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x3 mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = max{1, x2} mark_A(x1) = max{1, x1} active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = max{1, x1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x1 + 3 mark_A(x1) = max{2, x1 + 1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p1, p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(X1,X2,mark(X3)) -> U101#(X1,X2,X3) p2: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p3: 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 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#(X1,X2,mark(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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = max{1, x1} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = x1 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#(X1,X2,mark(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#(X1,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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#(X1,X2,mark(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,X2,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x3 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x3 mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p2, 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,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 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,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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = max{1, x2} mark_A(x1) = max{1, x1} active_A(x1) = max{3, x1 + 2} 2. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = 0 mark_A(x1) = 0 active_A(x1) = 0 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,mark(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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = 0 mark_A(x1) = x1 active_A(x1) = x1 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,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} -- 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x2 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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#(mark(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x1 mark_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = 0 mark_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U121#_A(x1,x2) = x2 + 2 mark_A(x1) = max{3, x1 + 2} active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U121#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U121#_A(x1,x2) = x2 + 2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U121#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U121#_A(x1,x2) = x1 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U121#_A(x1,x2) = 0 mark_A(x1) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1, p2 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = max{0, x2 - 1} mark_A(x1) = max{3, x1 + 2} active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = x1 The next rules are strictly ordered: p8 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,X3,mark(X4)) -> U131#(X1,X2,X3,X4) p7: 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 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,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = x1 The next rules are strictly ordered: p1, p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,X3,mark(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) p5: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,mark(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,X3,mark(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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x4 + 2 mark_A(x1) = x1 + 1 active_A(x1) = max{1, x1} 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = x1 active_A(x1) = 0 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: U131#(X1,X2,mark(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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,X2,mark(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) p4: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = max{4, x3 + 2} mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{4, x1 + 3} 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p3: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,X3,active(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 set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x2 mark_A(x1) = max{2, x1 + 1} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p2: 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} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p2: 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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = max{2, x3} mark_A(x1) = max{4, x1 + 3} active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 mark_A(x1) = 0 active_A(x1) = 0 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) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> 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,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: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x4 active_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = 0 active_A(x1) = 0 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.