Input TRS: 1: a__pairNs() -> cons(0(),incr(oddNs())) 2: a__oddNs() -> a__incr(a__pairNs()) 3: a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS)) 4: a__take(0(),XS) -> nil() 5: a__take(s(N),cons(X,XS)) -> cons(mark(X),take(N,XS)) 6: a__zip(nil(),XS) -> nil() 7: a__zip(X,nil()) -> nil() 8: a__zip(cons(X,XS),cons(Y,YS)) -> cons(pair(mark(X),mark(Y)),zip(XS,YS)) 9: a__tail(cons(X,XS)) -> mark(XS) 10: a__repItems(nil()) -> nil() 11: a__repItems(cons(X,XS)) -> cons(mark(X),cons(X,repItems(XS))) 12: mark(pairNs()) -> a__pairNs() 13: mark(incr(X)) -> a__incr(mark(X)) 14: mark(oddNs()) -> a__oddNs() 15: mark(take(X1,X2)) -> a__take(mark(X1),mark(X2)) 16: mark(zip(X1,X2)) -> a__zip(mark(X1),mark(X2)) 17: mark(tail(X)) -> a__tail(mark(X)) 18: mark(repItems(X)) -> a__repItems(mark(X)) 19: mark(cons(X1,X2)) -> cons(mark(X1),X2) 20: mark(0()) -> 0() 21: mark(s(X)) -> s(mark(X)) 22: mark(nil()) -> nil() 23: mark(pair(X1,X2)) -> pair(mark(X1),mark(X2)) 24: a__pairNs() -> pairNs() 25: a__incr(X) -> incr(X) 26: a__oddNs() -> oddNs() 27: a__take(X1,X2) -> take(X1,X2) 28: a__zip(X1,X2) -> zip(X1,X2) 29: a__tail(X) -> tail(X) 30: a__repItems(X) -> repItems(X) Number of strict rules: 30 Direct Order(PosReal,>,Poly) ... removes: 4 10 7 9 6 repItems(x1) weight: (/ 1 8) + 2 * x1 incr(x1) weight: x1 s(x1) weight: x1 a__incr(x1) weight: x1 take(x1,x2) weight: (/ 1 8) + x1 + x2 pair(x1,x2) weight: x1 + x2 tail(x1) weight: (/ 1 8) + x1 0() weight: 0 a__repItems(x1) weight: (/ 1 8) + 2 * x1 nil() weight: 0 mark(x1) weight: x1 pairNs() weight: 0 a__zip(x1,x2) weight: (/ 1 8) + x1 + x2 oddNs() weight: 0 cons(x1,x2) weight: x1 + x2 a__oddNs() weight: 0 a__take(x1,x2) weight: (/ 1 8) + x1 + x2 a__pairNs() weight: 0 a__tail(x1) weight: (/ 1 8) + x1 zip(x1,x2) weight: (/ 1 8) + x1 + x2 Number of strict rules: 25 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #a__oddNs() -> #a__incr(a__pairNs()) #2: #a__oddNs() -> #a__pairNs() #3: #mark(incr(X)) -> #a__incr(mark(X)) #4: #mark(incr(X)) -> #mark(X) #5: #a__repItems(cons(X,XS)) -> #mark(X) #6: #mark(pair(X1,X2)) -> #mark(X1) #7: #mark(pair(X1,X2)) -> #mark(X2) #8: #mark(pairNs()) -> #a__pairNs() #9: #mark(oddNs()) -> #a__oddNs() #10: #a__take(s(N),cons(X,XS)) -> #mark(X) #11: #mark(tail(X)) -> #a__tail(mark(X)) #12: #mark(tail(X)) -> #mark(X) #13: #mark(cons(X1,X2)) -> #mark(X1) #14: #mark(s(X)) -> #mark(X) #15: #mark(zip(X1,X2)) -> #a__zip(mark(X1),mark(X2)) #16: #mark(zip(X1,X2)) -> #mark(X1) #17: #mark(zip(X1,X2)) -> #mark(X2) #18: #a__incr(cons(X,XS)) -> #mark(X) #19: #a__zip(cons(X,XS),cons(Y,YS)) -> #mark(X) #20: #a__zip(cons(X,XS),cons(Y,YS)) -> #mark(Y) #21: #mark(take(X1,X2)) -> #a__take(mark(X1),mark(X2)) #22: #mark(take(X1,X2)) -> #mark(X1) #23: #mark(take(X1,X2)) -> #mark(X2) #24: #mark(repItems(X)) -> #a__repItems(mark(X)) #25: #mark(repItems(X)) -> #mark(X) Number of SCCs: 1, DPs: 22, edges: 263 SCC { #1 #3..7 #9 #10 #12..25 } Removing DPs: Order(PosReal,>,Sum)... succeeded. repItems(x1) weight: (/ 1 2) + x1 incr(x1) weight: x1 s(x1) weight: x1 #a__zip(x1,x2) weight: (/ 1 4) + x1 + x2 a__incr(x1) weight: x1 take(x1,x2) weight: (/ 1 2) + x1 + x2 pair(x1,x2) weight: (/ 1 4) + x1 + x2 #a__take(x1,x2) weight: (/ 1 4) + x2 #a__pairNs() weight: 0 tail(x1) weight: (/ 1 4) + x1 #mark(x1) weight: x1 0() weight: 0 a__repItems(x1) weight: (/ 1 2) + x1 nil() weight: 0 #a__oddNs() weight: 0 mark(x1) weight: x1 pairNs() weight: 0 a__zip(x1,x2) weight: (/ 1 2) + x1 + x2 #a__repItems(x1) weight: (/ 1 4) + x1 oddNs() weight: 0 #a__incr(x1) weight: x1 cons(x1,x2) weight: x1 a__oddNs() weight: 0 a__take(x1,x2) weight: (/ 1 2) + x1 + x2 a__pairNs() weight: 0 a__tail(x1) weight: (/ 1 4) + x1 #a__tail(x1) weight: 0 zip(x1,x2) weight: (/ 1 2) + x1 + x2 Usable rules: { 1..3 5 8 11..30 } Removed DPs: #5..7 #10 #12 #15..17 #19..25 Number of SCCs: 1, DPs: 7, edges: 23 SCC { #1 #3 #4 #9 #13 #14 #18 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. repItems(x1) weight: (/ 1 8) + x1 incr(x1) weight: (/ 1 4) + x1 s(x1) weight: (/ 1 8) + x1 #a__zip(x1,x2) weight: 0 a__incr(x1) weight: (/ 1 4) + x1 take(x1,x2) weight: max{0, (/ 1 8) + x2} pair(x1,x2) weight: 0 #a__take(x1,x2) weight: 0 #a__pairNs() weight: 0 tail(x1) weight: (/ 1 8) #mark(x1) weight: x1 0() weight: (/ 1 8) a__repItems(x1) weight: (/ 1 8) + x1 nil() weight: (/ 1 8) #a__oddNs() weight: (/ 5 8) mark(x1) weight: x1 pairNs() weight: (/ 3 8) a__zip(x1,x2) weight: max{0, (/ 1 4) + x2} #a__repItems(x1) weight: 0 oddNs() weight: (/ 3 4) #a__incr(x1) weight: (/ 1 8) + x1 cons(x1,x2) weight: max{0, (/ 1 4) + x1} a__oddNs() weight: (/ 3 4) a__take(x1,x2) weight: max{0, (/ 1 8) + x2} a__pairNs() weight: (/ 3 8) a__tail(x1) weight: (/ 1 8) #a__tail(x1) weight: 0 zip(x1,x2) weight: max{0, (/ 1 4) + x2} Usable rules: { 1..3 5 8 11..30 } Removed DPs: #1 #3 #4 #9 #13 #14 #18 Number of SCCs: 0, DPs: 0, edges: 0 YES