YES Problem 1: (VAR v_NonEmpty:S N:S X:S X1:S X2:S XS:S Y:S) (RULES activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ) Problem 1: Dependency Pairs Processor: -> Pairs: ACTIVATE(n__fib1(X1:S,X2:S)) -> FIB1(X1:S,X2:S) ADD(s(X:S),Y:S) -> ADD(X:S,Y:S) FIB(N:S) -> FIB1(s(0),s(0)) FIB(N:S) -> SEL(N:S,fib1(s(0),s(0))) FIB1(X:S,Y:S) -> ADD(X:S,Y:S) SEL(s(N:S),cons(X:S,XS:S)) -> ACTIVATE(XS:S) SEL(s(N:S),cons(X:S,XS:S)) -> SEL(N:S,activate(XS:S)) -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) Problem 1: SCC Processor: -> Pairs: ACTIVATE(n__fib1(X1:S,X2:S)) -> FIB1(X1:S,X2:S) ADD(s(X:S),Y:S) -> ADD(X:S,Y:S) FIB(N:S) -> FIB1(s(0),s(0)) FIB(N:S) -> SEL(N:S,fib1(s(0),s(0))) FIB1(X:S,Y:S) -> ADD(X:S,Y:S) SEL(s(N:S),cons(X:S,XS:S)) -> ACTIVATE(XS:S) SEL(s(N:S),cons(X:S,XS:S)) -> SEL(N:S,activate(XS:S)) -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: ADD(s(X:S),Y:S) -> ADD(X:S,Y:S) ->->-> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->->Cycle: ->->-> Pairs: SEL(s(N:S),cons(X:S,XS:S)) -> SEL(N:S,activate(XS:S)) ->->-> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) The problem is decomposed in 2 subproblems. Problem 1.1: Subterm Processor: -> Pairs: ADD(s(X:S),Y:S) -> ADD(X:S,Y:S) -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->Projection: pi(ADD) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: SEL(s(N:S),cons(X:S,XS:S)) -> SEL(N:S,activate(XS:S)) -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->Projection: pi(SEL) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: activate(n__fib1(X1:S,X2:S)) -> fib1(X1:S,X2:S) activate(X:S) -> X:S add(0,X:S) -> X:S add(s(X:S),Y:S) -> s(add(X:S,Y:S)) fib(N:S) -> sel(N:S,fib1(s(0),s(0))) fib1(X:S,Y:S) -> cons(X:S,n__fib1(Y:S,add(X:S,Y:S))) fib1(X1:S,X2:S) -> n__fib1(X1:S,X2:S) sel(0,cons(X:S,XS:S)) -> X:S sel(s(N:S),cons(X:S,XS:S)) -> sel(N:S,activate(XS:S)) ->Strongly Connected Components: There is no strongly connected component The problem is finite.