MAYBE Problem: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X Proof: DP Processor: DPs: zeros#() -> 0#() zeros#() -> cons#(0(),n__zeros()) U41#(tt(),V2) -> activate#(V2) U41#(tt(),V2) -> isNatIList#(activate(V2)) U41#(tt(),V2) -> U42#(isNatIList(activate(V2))) U51#(tt(),V2) -> activate#(V2) U51#(tt(),V2) -> isNatList#(activate(V2)) U51#(tt(),V2) -> U52#(isNatList(activate(V2))) U61#(tt(),L,N) -> activate#(L) U61#(tt(),L,N) -> activate#(N) U61#(tt(),L,N) -> isNat#(activate(N)) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) U62#(tt(),L) -> activate#(L) U62#(tt(),L) -> length#(activate(L)) U62#(tt(),L) -> s#(length(activate(L))) isNat#(n__length(V1)) -> activate#(V1) isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNat#(n__s(V1)) -> activate#(V1) isNat#(n__s(V1)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNatIList#(V) -> activate#(V) isNatIList#(V) -> isNatList#(activate(V)) isNatIList#(V) -> U31#(isNatList(activate(V))) isNatIList#(n__cons(V1,V2)) -> activate#(V2) isNatIList#(n__cons(V1,V2)) -> activate#(V1) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) isNatList#(n__cons(V1,V2)) -> activate#(V2) isNatList#(n__cons(V1,V2)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) length#(nil()) -> 0#() length#(cons(N,L)) -> activate#(L) length#(cons(N,L)) -> isNatList#(activate(L)) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) activate#(n__zeros()) -> zeros#() activate#(n__0()) -> 0#() activate#(n__length(X)) -> length#(X) activate#(n__s(X)) -> s#(X) activate#(n__cons(X1,X2)) -> cons#(X1,X2) activate#(n__nil()) -> nil#() TRS: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X CDG Processor: DPs: zeros#() -> 0#() zeros#() -> cons#(0(),n__zeros()) U41#(tt(),V2) -> activate#(V2) U41#(tt(),V2) -> isNatIList#(activate(V2)) U41#(tt(),V2) -> U42#(isNatIList(activate(V2))) U51#(tt(),V2) -> activate#(V2) U51#(tt(),V2) -> isNatList#(activate(V2)) U51#(tt(),V2) -> U52#(isNatList(activate(V2))) U61#(tt(),L,N) -> activate#(L) U61#(tt(),L,N) -> activate#(N) U61#(tt(),L,N) -> isNat#(activate(N)) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) U62#(tt(),L) -> activate#(L) U62#(tt(),L) -> length#(activate(L)) U62#(tt(),L) -> s#(length(activate(L))) isNat#(n__length(V1)) -> activate#(V1) isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNat#(n__s(V1)) -> activate#(V1) isNat#(n__s(V1)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNatIList#(V) -> activate#(V) isNatIList#(V) -> isNatList#(activate(V)) isNatIList#(V) -> U31#(isNatList(activate(V))) isNatIList#(n__cons(V1,V2)) -> activate#(V2) isNatIList#(n__cons(V1,V2)) -> activate#(V1) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) isNatList#(n__cons(V1,V2)) -> activate#(V2) isNatList#(n__cons(V1,V2)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) length#(nil()) -> 0#() length#(cons(N,L)) -> activate#(L) length#(cons(N,L)) -> isNatList#(activate(L)) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) activate#(n__zeros()) -> zeros#() activate#(n__0()) -> 0#() activate#(n__length(X)) -> length#(X) activate#(n__s(X)) -> s#(X) activate#(n__cons(X1,X2)) -> cons#(X1,X2) activate#(n__nil()) -> nil#() TRS: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X graph: length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) -> U61#(tt(),L,N) -> activate#(L) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) -> U61#(tt(),L,N) -> activate#(N) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) -> U61#(tt(),L,N) -> isNat#(activate(N)) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) -> U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) length#(cons(N,L)) -> isNatList#(activate(L)) -> isNatList#(n__cons(V1,V2)) -> activate#(V2) length#(cons(N,L)) -> isNatList#(activate(L)) -> isNatList#(n__cons(V1,V2)) -> activate#(V1) length#(cons(N,L)) -> isNatList#(activate(L)) -> isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) length#(cons(N,L)) -> isNatList#(activate(L)) -> isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) length#(cons(N,L)) -> activate#(L) -> activate#(n__zeros()) -> zeros#() length#(cons(N,L)) -> activate#(L) -> activate#(n__0()) -> 0#() length#(cons(N,L)) -> activate#(L) -> activate#(n__length(X)) -> length#(X) length#(cons(N,L)) -> activate#(L) -> activate#(n__s(X)) -> s#(X) length#(cons(N,L)) -> activate#(L) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) length#(cons(N,L)) -> activate#(L) -> activate#(n__nil()) -> nil#() U62#(tt(),L) -> length#(activate(L)) -> length#(nil()) -> 0#() U62#(tt(),L) -> length#(activate(L)) -> length#(cons(N,L)) -> activate#(L) U62#(tt(),L) -> length#(activate(L)) -> length#(cons(N,L)) -> isNatList#(activate(L)) U62#(tt(),L) -> length#(activate(L)) -> length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) U62#(tt(),L) -> activate#(L) -> activate#(n__zeros()) -> zeros#() U62#(tt(),L) -> activate#(L) -> activate#(n__0()) -> 0#() U62#(tt(),L) -> activate#(L) -> activate#(n__length(X)) -> length#(X) U62#(tt(),L) -> activate#(L) -> activate#(n__s(X)) -> s#(X) U62#(tt(),L) -> activate#(L) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) U62#(tt(),L) -> activate#(L) -> activate#(n__nil()) -> nil#() isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> activate#(V1) isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> activate#(V1) isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__zeros()) -> zeros#() isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__0()) -> 0#() isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__length(X)) -> length#(X) isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__s(X)) -> s#(X) isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNat#(n__s(V1)) -> activate#(V1) -> activate#(n__nil()) -> nil#() isNat#(n__length(V1)) -> isNatList#(activate(V1)) -> isNatList#(n__cons(V1,V2)) -> activate#(V2) isNat#(n__length(V1)) -> isNatList#(activate(V1)) -> isNatList#(n__cons(V1,V2)) -> activate#(V1) isNat#(n__length(V1)) -> isNatList#(activate(V1)) -> isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNat#(n__length(V1)) -> isNatList#(activate(V1)) -> isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__zeros()) -> zeros#() isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__0()) -> 0#() isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__length(X)) -> length#(X) isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__s(X)) -> s#(X) isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNat#(n__length(V1)) -> activate#(V1) -> activate#(n__nil()) -> nil#() U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) -> U62#(tt(),L) -> activate#(L) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) -> U62#(tt(),L) -> length#(activate(L)) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) -> U62#(tt(),L) -> s#(length(activate(L))) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__length(V1)) -> activate#(V1) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__length(V1)) -> isNatList#(activate(V1)) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__s(V1)) -> activate#(V1) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__s(V1)) -> isNat#(activate(V1)) U61#(tt(),L,N) -> isNat#(activate(N)) -> isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) U61#(tt(),L,N) -> activate#(N) -> activate#(n__zeros()) -> zeros#() U61#(tt(),L,N) -> activate#(N) -> activate#(n__0()) -> 0#() U61#(tt(),L,N) -> activate#(N) -> activate#(n__length(X)) -> length#(X) U61#(tt(),L,N) -> activate#(N) -> activate#(n__s(X)) -> s#(X) U61#(tt(),L,N) -> activate#(N) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) U61#(tt(),L,N) -> activate#(N) -> activate#(n__nil()) -> nil#() U61#(tt(),L,N) -> activate#(L) -> activate#(n__zeros()) -> zeros#() U61#(tt(),L,N) -> activate#(L) -> activate#(n__0()) -> 0#() U61#(tt(),L,N) -> activate#(L) -> activate#(n__length(X)) -> length#(X) U61#(tt(),L,N) -> activate#(L) -> activate#(n__s(X)) -> s#(X) U61#(tt(),L,N) -> activate#(L) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) U61#(tt(),L,N) -> activate#(L) -> activate#(n__nil()) -> nil#() isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> isNat#(activate(V1)) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) -> U51#(tt(),V2) -> activate#(V2) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) -> U51#(tt(),V2) -> isNatList#(activate(V2)) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) -> U51#(tt(),V2) -> U52#(isNatList(activate(V2))) isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__zeros()) -> zeros#() isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__0()) -> 0#() isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__length(X)) -> length#(X) isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__s(X)) -> s#(X) isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNatList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__nil()) -> nil#() isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__zeros()) -> zeros#() isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__0()) -> 0#() isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__length(X)) -> length#(X) isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__s(X)) -> s#(X) isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNatList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__nil()) -> nil#() U51#(tt(),V2) -> isNatList#(activate(V2)) -> isNatList#(n__cons(V1,V2)) -> activate#(V2) U51#(tt(),V2) -> isNatList#(activate(V2)) -> isNatList#(n__cons(V1,V2)) -> activate#(V1) U51#(tt(),V2) -> isNatList#(activate(V2)) -> isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) U51#(tt(),V2) -> isNatList#(activate(V2)) -> isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) U51#(tt(),V2) -> activate#(V2) -> activate#(n__zeros()) -> zeros#() U51#(tt(),V2) -> activate#(V2) -> activate#(n__0()) -> 0#() U51#(tt(),V2) -> activate#(V2) -> activate#(n__length(X)) -> length#(X) U51#(tt(),V2) -> activate#(V2) -> activate#(n__s(X)) -> s#(X) U51#(tt(),V2) -> activate#(V2) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) U51#(tt(),V2) -> activate#(V2) -> activate#(n__nil()) -> nil#() isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> activate#(V1) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> activate#(V1) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> isNat#(activate(V1)) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) -> isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__zeros()) -> zeros#() isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__0()) -> 0#() isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__length(X)) -> length#(X) isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__s(X)) -> s#(X) isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNatIList#(n__cons(V1,V2)) -> activate#(V1) -> activate#(n__nil()) -> nil#() isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__zeros()) -> zeros#() isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__0()) -> 0#() isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__length(X)) -> length#(X) isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__s(X)) -> s#(X) isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNatIList#(n__cons(V1,V2)) -> activate#(V2) -> activate#(n__nil()) -> nil#() isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) -> U41#(tt(),V2) -> activate#(V2) isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) -> U41#(tt(),V2) -> isNatIList#(activate(V2)) isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) -> U41#(tt(),V2) -> U42#(isNatIList(activate(V2))) isNatIList#(V) -> isNatList#(activate(V)) -> isNatList#(n__cons(V1,V2)) -> activate#(V2) isNatIList#(V) -> isNatList#(activate(V)) -> isNatList#(n__cons(V1,V2)) -> activate#(V1) isNatIList#(V) -> isNatList#(activate(V)) -> isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatIList#(V) -> isNatList#(activate(V)) -> isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) isNatIList#(V) -> activate#(V) -> activate#(n__zeros()) -> zeros#() isNatIList#(V) -> activate#(V) -> activate#(n__0()) -> 0#() isNatIList#(V) -> activate#(V) -> activate#(n__length(X)) -> length#(X) isNatIList#(V) -> activate#(V) -> activate#(n__s(X)) -> s#(X) isNatIList#(V) -> activate#(V) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) isNatIList#(V) -> activate#(V) -> activate#(n__nil()) -> nil#() activate#(n__length(X)) -> length#(X) -> length#(nil()) -> 0#() activate#(n__length(X)) -> length#(X) -> length#(cons(N,L)) -> activate#(L) activate#(n__length(X)) -> length#(X) -> length#(cons(N,L)) -> isNatList#(activate(L)) activate#(n__length(X)) -> length#(X) -> length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) activate#(n__zeros()) -> zeros#() -> zeros#() -> 0#() activate#(n__zeros()) -> zeros#() -> zeros#() -> cons#(0(),n__zeros()) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(V) -> activate#(V) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(V) -> isNatList#(activate(V)) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(V) -> U31#(isNatList(activate(V))) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(n__cons(V1,V2)) -> activate#(V2) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(n__cons(V1,V2)) -> activate#(V1) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) U41#(tt(),V2) -> isNatIList#(activate(V2)) -> isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) U41#(tt(),V2) -> activate#(V2) -> activate#(n__zeros()) -> zeros#() U41#(tt(),V2) -> activate#(V2) -> activate#(n__0()) -> 0#() U41#(tt(),V2) -> activate#(V2) -> activate#(n__length(X)) -> length#(X) U41#(tt(),V2) -> activate#(V2) -> activate#(n__s(X)) -> s#(X) U41#(tt(),V2) -> activate#(V2) -> activate#(n__cons(X1,X2)) -> cons#(X1,X2) U41#(tt(),V2) -> activate#(V2) -> activate#(n__nil()) -> nil#() Restore Modifier: DPs: zeros#() -> 0#() zeros#() -> cons#(0(),n__zeros()) U41#(tt(),V2) -> activate#(V2) U41#(tt(),V2) -> isNatIList#(activate(V2)) U41#(tt(),V2) -> U42#(isNatIList(activate(V2))) U51#(tt(),V2) -> activate#(V2) U51#(tt(),V2) -> isNatList#(activate(V2)) U51#(tt(),V2) -> U52#(isNatList(activate(V2))) U61#(tt(),L,N) -> activate#(L) U61#(tt(),L,N) -> activate#(N) U61#(tt(),L,N) -> isNat#(activate(N)) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) U62#(tt(),L) -> activate#(L) U62#(tt(),L) -> length#(activate(L)) U62#(tt(),L) -> s#(length(activate(L))) isNat#(n__length(V1)) -> activate#(V1) isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNat#(n__length(V1)) -> U11#(isNatList(activate(V1))) isNat#(n__s(V1)) -> activate#(V1) isNat#(n__s(V1)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> U21#(isNat(activate(V1))) isNatIList#(V) -> activate#(V) isNatIList#(V) -> isNatList#(activate(V)) isNatIList#(V) -> U31#(isNatList(activate(V))) isNatIList#(n__cons(V1,V2)) -> activate#(V2) isNatIList#(n__cons(V1,V2)) -> activate#(V1) isNatIList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) isNatList#(n__cons(V1,V2)) -> activate#(V2) isNatList#(n__cons(V1,V2)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) length#(nil()) -> 0#() length#(cons(N,L)) -> activate#(L) length#(cons(N,L)) -> isNatList#(activate(L)) length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) activate#(n__zeros()) -> zeros#() activate#(n__0()) -> 0#() activate#(n__length(X)) -> length#(X) activate#(n__s(X)) -> s#(X) activate#(n__cons(X1,X2)) -> cons#(X1,X2) activate#(n__nil()) -> nil#() TRS: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X SCC Processor: #sccs: 2 #rules: 22 #arcs: 148/1764 DPs: isNatIList#(n__cons(V1,V2)) -> U41#(isNat(activate(V1)),activate(V2)) U41#(tt(),V2) -> isNatIList#(activate(V2)) TRS: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X Open DPs: length#(cons(N,L)) -> U61#(isNatList(activate(L)),activate(L),N) U61#(tt(),L,N) -> U62#(isNat(activate(N)),activate(L)) U62#(tt(),L) -> length#(activate(L)) length#(cons(N,L)) -> isNatList#(activate(L)) isNatList#(n__cons(V1,V2)) -> U51#(isNat(activate(V1)),activate(V2)) U51#(tt(),V2) -> isNatList#(activate(V2)) isNatList#(n__cons(V1,V2)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> isNat#(activate(V1)) isNat#(n__s(V1)) -> activate#(V1) activate#(n__length(X)) -> length#(X) length#(cons(N,L)) -> activate#(L) isNat#(n__length(V1)) -> isNatList#(activate(V1)) isNatList#(n__cons(V1,V2)) -> activate#(V1) isNatList#(n__cons(V1,V2)) -> activate#(V2) isNat#(n__length(V1)) -> activate#(V1) U51#(tt(),V2) -> activate#(V2) U62#(tt(),L) -> activate#(L) U61#(tt(),L,N) -> isNat#(activate(N)) U61#(tt(),L,N) -> activate#(N) U61#(tt(),L,N) -> activate#(L) TRS: zeros() -> cons(0(),n__zeros()) U11(tt()) -> tt() U21(tt()) -> tt() U31(tt()) -> tt() U41(tt(),V2) -> U42(isNatIList(activate(V2))) U42(tt()) -> tt() U51(tt(),V2) -> U52(isNatList(activate(V2))) U52(tt()) -> tt() U61(tt(),L,N) -> U62(isNat(activate(N)),activate(L)) U62(tt(),L) -> s(length(activate(L))) isNat(n__0()) -> tt() isNat(n__length(V1)) -> U11(isNatList(activate(V1))) isNat(n__s(V1)) -> U21(isNat(activate(V1))) isNatIList(V) -> U31(isNatList(activate(V))) isNatIList(n__zeros()) -> tt() isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) isNatList(n__nil()) -> tt() isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) length(nil()) -> 0() length(cons(N,L)) -> U61(isNatList(activate(L)),activate(L),N) zeros() -> n__zeros() 0() -> n__0() length(X) -> n__length(X) s(X) -> n__s(X) cons(X1,X2) -> n__cons(X1,X2) nil() -> n__nil() activate(n__zeros()) -> zeros() activate(n__0()) -> 0() activate(n__length(X)) -> length(X) activate(n__s(X)) -> s(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(n__nil()) -> nil() activate(X) -> X Open