/export/starexec/sandbox/solver/bin/starexec_run_default /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES Problem 1: (VAR v_NonEmpty:S N:S X:S XS:S Y:S YS:S ZS:S) (RULES U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ) Problem 1: Dependency Pairs Processor: -> Pairs: U11#(tt,N:S,XS:S) -> U12#(tt,activate(N:S),activate(XS:S)) U11#(tt,N:S,XS:S) -> ACTIVATE(N:S) U11#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U12#(tt,N:S,XS:S) -> ACTIVATE(N:S) U12#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U12#(tt,N:S,XS:S) -> SND(splitAt(activate(N:S),activate(XS:S))) U12#(tt,N:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) U21#(tt,X:S) -> U22#(tt,activate(X:S)) U21#(tt,X:S) -> ACTIVATE(X:S) U22#(tt,X:S) -> ACTIVATE(X:S) U31#(tt,N:S) -> U32#(tt,activate(N:S)) U31#(tt,N:S) -> ACTIVATE(N:S) U32#(tt,N:S) -> ACTIVATE(N:S) U41#(tt,N:S,XS:S) -> U42#(tt,activate(N:S),activate(XS:S)) U41#(tt,N:S,XS:S) -> ACTIVATE(N:S) U41#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U42#(tt,N:S,XS:S) -> ACTIVATE(N:S) U42#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U42#(tt,N:S,XS:S) -> AFTERNTH(activate(N:S),activate(XS:S)) U42#(tt,N:S,XS:S) -> HEAD(afterNth(activate(N:S),activate(XS:S))) U51#(tt,Y:S) -> U52#(tt,activate(Y:S)) U51#(tt,Y:S) -> ACTIVATE(Y:S) U52#(tt,Y:S) -> ACTIVATE(Y:S) U61#(tt,N:S,X:S,XS:S) -> U62#(tt,activate(N:S),activate(X:S),activate(XS:S)) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U62#(tt,N:S,X:S,XS:S) -> U63#(tt,activate(N:S),activate(X:S),activate(XS:S)) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U63#(tt,N:S,X:S,XS:S) -> U64#(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U63#(tt,N:S,X:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) U64#(pair(YS:S,ZS:S),X:S) -> ACTIVATE(X:S) U71#(tt,XS:S) -> U72#(tt,activate(XS:S)) U71#(tt,XS:S) -> ACTIVATE(XS:S) U72#(tt,XS:S) -> ACTIVATE(XS:S) U81#(tt,N:S,XS:S) -> U82#(tt,activate(N:S),activate(XS:S)) U81#(tt,N:S,XS:S) -> ACTIVATE(N:S) U81#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U82#(tt,N:S,XS:S) -> ACTIVATE(N:S) U82#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U82#(tt,N:S,XS:S) -> FST(splitAt(activate(N:S),activate(XS:S))) U82#(tt,N:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) ACTIVATE(n__natsFrom(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__natsFrom(X:S)) -> NATSFROM(activate(X:S)) ACTIVATE(n__s(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__s(X:S)) -> S(activate(X:S)) AFTERNTH(N:S,XS:S) -> U11#(tt,N:S,XS:S) FST(pair(X:S,Y:S)) -> U21#(tt,X:S) HEAD(cons(N:S,XS:S)) -> U31#(tt,N:S) SEL(N:S,XS:S) -> U41#(tt,N:S,XS:S) SND(pair(X:S,Y:S)) -> U51#(tt,Y:S) SPLITAT(s(N:S),cons(X:S,XS:S)) -> U61#(tt,N:S,X:S,activate(XS:S)) SPLITAT(s(N:S),cons(X:S,XS:S)) -> ACTIVATE(XS:S) TAIL(cons(N:S,XS:S)) -> U71#(tt,activate(XS:S)) TAIL(cons(N:S,XS:S)) -> ACTIVATE(XS:S) TAKE(N:S,XS:S) -> U81#(tt,N:S,XS:S) -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) Problem 1: SCC Processor: -> Pairs: U11#(tt,N:S,XS:S) -> U12#(tt,activate(N:S),activate(XS:S)) U11#(tt,N:S,XS:S) -> ACTIVATE(N:S) U11#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U12#(tt,N:S,XS:S) -> ACTIVATE(N:S) U12#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U12#(tt,N:S,XS:S) -> SND(splitAt(activate(N:S),activate(XS:S))) U12#(tt,N:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) U21#(tt,X:S) -> U22#(tt,activate(X:S)) U21#(tt,X:S) -> ACTIVATE(X:S) U22#(tt,X:S) -> ACTIVATE(X:S) U31#(tt,N:S) -> U32#(tt,activate(N:S)) U31#(tt,N:S) -> ACTIVATE(N:S) U32#(tt,N:S) -> ACTIVATE(N:S) U41#(tt,N:S,XS:S) -> U42#(tt,activate(N:S),activate(XS:S)) U41#(tt,N:S,XS:S) -> ACTIVATE(N:S) U41#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U42#(tt,N:S,XS:S) -> ACTIVATE(N:S) U42#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U42#(tt,N:S,XS:S) -> AFTERNTH(activate(N:S),activate(XS:S)) U42#(tt,N:S,XS:S) -> HEAD(afterNth(activate(N:S),activate(XS:S))) U51#(tt,Y:S) -> U52#(tt,activate(Y:S)) U51#(tt,Y:S) -> ACTIVATE(Y:S) U52#(tt,Y:S) -> ACTIVATE(Y:S) U61#(tt,N:S,X:S,XS:S) -> U62#(tt,activate(N:S),activate(X:S),activate(XS:S)) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U61#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U62#(tt,N:S,X:S,XS:S) -> U63#(tt,activate(N:S),activate(X:S),activate(XS:S)) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U62#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U63#(tt,N:S,X:S,XS:S) -> U64#(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(N:S) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(X:S) U63#(tt,N:S,X:S,XS:S) -> ACTIVATE(XS:S) U63#(tt,N:S,X:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) U64#(pair(YS:S,ZS:S),X:S) -> ACTIVATE(X:S) U71#(tt,XS:S) -> U72#(tt,activate(XS:S)) U71#(tt,XS:S) -> ACTIVATE(XS:S) U72#(tt,XS:S) -> ACTIVATE(XS:S) U81#(tt,N:S,XS:S) -> U82#(tt,activate(N:S),activate(XS:S)) U81#(tt,N:S,XS:S) -> ACTIVATE(N:S) U81#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U82#(tt,N:S,XS:S) -> ACTIVATE(N:S) U82#(tt,N:S,XS:S) -> ACTIVATE(XS:S) U82#(tt,N:S,XS:S) -> FST(splitAt(activate(N:S),activate(XS:S))) U82#(tt,N:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) ACTIVATE(n__natsFrom(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__natsFrom(X:S)) -> NATSFROM(activate(X:S)) ACTIVATE(n__s(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__s(X:S)) -> S(activate(X:S)) AFTERNTH(N:S,XS:S) -> U11#(tt,N:S,XS:S) FST(pair(X:S,Y:S)) -> U21#(tt,X:S) HEAD(cons(N:S,XS:S)) -> U31#(tt,N:S) SEL(N:S,XS:S) -> U41#(tt,N:S,XS:S) SND(pair(X:S,Y:S)) -> U51#(tt,Y:S) SPLITAT(s(N:S),cons(X:S,XS:S)) -> U61#(tt,N:S,X:S,activate(XS:S)) SPLITAT(s(N:S),cons(X:S,XS:S)) -> ACTIVATE(XS:S) TAIL(cons(N:S,XS:S)) -> U71#(tt,activate(XS:S)) TAIL(cons(N:S,XS:S)) -> ACTIVATE(XS:S) TAKE(N:S,XS:S) -> U81#(tt,N:S,XS:S) -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ACTIVATE(n__natsFrom(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__s(X:S)) -> ACTIVATE(X:S) ->->-> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ->->Cycle: ->->-> Pairs: U61#(tt,N:S,X:S,XS:S) -> U62#(tt,activate(N:S),activate(X:S),activate(XS:S)) U62#(tt,N:S,X:S,XS:S) -> U63#(tt,activate(N:S),activate(X:S),activate(XS:S)) U63#(tt,N:S,X:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) SPLITAT(s(N:S),cons(X:S,XS:S)) -> U61#(tt,N:S,X:S,activate(XS:S)) ->->-> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) The problem is decomposed in 2 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ACTIVATE(n__natsFrom(X:S)) -> ACTIVATE(X:S) ACTIVATE(n__s(X:S)) -> ACTIVATE(X:S) -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ->Projection: pi(ACTIVATE) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Reduction Pair Processor: -> Pairs: U61#(tt,N:S,X:S,XS:S) -> U62#(tt,activate(N:S),activate(X:S),activate(XS:S)) U62#(tt,N:S,X:S,XS:S) -> U63#(tt,activate(N:S),activate(X:S),activate(XS:S)) U63#(tt,N:S,X:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) SPLITAT(s(N:S),cons(X:S,XS:S)) -> U61#(tt,N:S,X:S,activate(XS:S)) -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) -> Usable rules: activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [activate](X) = X [natsFrom](X) = 2.X + 2 [s](X) = 2.X + 2 [cons](X1,X2) = 2.X1 + 2 [n__natsFrom](X) = 2.X + 2 [n__s](X) = 2.X + 2 [tt] = 2 [U61#](X1,X2,X3,X4) = 2.X1 + 2.X2 [U62#](X1,X2,X3,X4) = 2.X2 + 2 [U63#](X1,X2,X3,X4) = 2.X2 + 2 [SPLITAT](X1,X2) = 2.X1 + 1 Problem 1.2: SCC Processor: -> Pairs: U62#(tt,N:S,X:S,XS:S) -> U63#(tt,activate(N:S),activate(X:S),activate(XS:S)) U63#(tt,N:S,X:S,XS:S) -> SPLITAT(activate(N:S),activate(XS:S)) SPLITAT(s(N:S),cons(X:S,XS:S)) -> U61#(tt,N:S,X:S,activate(XS:S)) -> Rules: U11(tt,N:S,XS:S) -> U12(tt,activate(N:S),activate(XS:S)) U12(tt,N:S,XS:S) -> snd(splitAt(activate(N:S),activate(XS:S))) U21(tt,X:S) -> U22(tt,activate(X:S)) U22(tt,X:S) -> activate(X:S) U31(tt,N:S) -> U32(tt,activate(N:S)) U32(tt,N:S) -> activate(N:S) U41(tt,N:S,XS:S) -> U42(tt,activate(N:S),activate(XS:S)) U42(tt,N:S,XS:S) -> head(afterNth(activate(N:S),activate(XS:S))) U51(tt,Y:S) -> U52(tt,activate(Y:S)) U52(tt,Y:S) -> activate(Y:S) U61(tt,N:S,X:S,XS:S) -> U62(tt,activate(N:S),activate(X:S),activate(XS:S)) U62(tt,N:S,X:S,XS:S) -> U63(tt,activate(N:S),activate(X:S),activate(XS:S)) U63(tt,N:S,X:S,XS:S) -> U64(splitAt(activate(N:S),activate(XS:S)),activate(X:S)) U64(pair(YS:S,ZS:S),X:S) -> pair(cons(activate(X:S),YS:S),ZS:S) U71(tt,XS:S) -> U72(tt,activate(XS:S)) U72(tt,XS:S) -> activate(XS:S) U81(tt,N:S,XS:S) -> U82(tt,activate(N:S),activate(XS:S)) U82(tt,N:S,XS:S) -> fst(splitAt(activate(N:S),activate(XS:S))) activate(n__natsFrom(X:S)) -> natsFrom(activate(X:S)) activate(n__s(X:S)) -> s(activate(X:S)) activate(X:S) -> X:S afterNth(N:S,XS:S) -> U11(tt,N:S,XS:S) fst(pair(X:S,Y:S)) -> U21(tt,X:S) head(cons(N:S,XS:S)) -> U31(tt,N:S) natsFrom(N:S) -> cons(N:S,n__natsFrom(n__s(N:S))) natsFrom(X:S) -> n__natsFrom(X:S) s(X:S) -> n__s(X:S) sel(N:S,XS:S) -> U41(tt,N:S,XS:S) snd(pair(X:S,Y:S)) -> U51(tt,Y:S) splitAt(s(N:S),cons(X:S,XS:S)) -> U61(tt,N:S,X:S,activate(XS:S)) splitAt(0,XS:S) -> pair(nil,XS:S) tail(cons(N:S,XS:S)) -> U71(tt,activate(XS:S)) take(N:S,XS:S) -> U81(tt,N:S,XS:S) ->Strongly Connected Components: There is no strongly connected component The problem is finite.