Input TRS: 1: active(nats()) -> mark(cons(0(),incr(nats()))) 2: active(pairs()) -> mark(cons(0(),incr(odds()))) 3: active(odds()) -> mark(incr(pairs())) 4: active(incr(cons(X,XS))) -> mark(cons(s(X),incr(XS))) 5: active(head(cons(X,XS))) -> mark(X) 6: active(tail(cons(X,XS))) -> mark(XS) 7: active(cons(X1,X2)) -> cons(active(X1),X2) 8: active(incr(X)) -> incr(active(X)) 9: active(s(X)) -> s(active(X)) 10: active(head(X)) -> head(active(X)) 11: active(tail(X)) -> tail(active(X)) 12: cons(mark(X1),X2) -> mark(cons(X1,X2)) 13: incr(mark(X)) -> mark(incr(X)) 14: s(mark(X)) -> mark(s(X)) 15: head(mark(X)) -> mark(head(X)) 16: tail(mark(X)) -> mark(tail(X)) 17: proper(nats()) -> ok(nats()) 18: proper(cons(X1,X2)) -> cons(proper(X1),proper(X2)) 19: proper(0()) -> ok(0()) 20: proper(incr(X)) -> incr(proper(X)) 21: proper(pairs()) -> ok(pairs()) 22: proper(odds()) -> ok(odds()) 23: proper(s(X)) -> s(proper(X)) 24: proper(head(X)) -> head(proper(X)) 25: proper(tail(X)) -> tail(proper(X)) 26: cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) 27: incr(ok(X)) -> ok(incr(X)) 28: s(ok(X)) -> ok(s(X)) 29: head(ok(X)) -> ok(head(X)) 30: tail(ok(X)) -> ok(tail(X)) 31: top(mark(X)) -> top(proper(X)) 32: top(ok(X)) -> top(active(X)) Number of strict rules: 32 Direct Order(PosReal,>,Poly) ... removes: 5 6 incr(x1) weight: 2 * x1 s(x1) weight: 2 * x1 top(x1) weight: x1 pairs() weight: 0 tail(x1) weight: (/ 1 4) + x1 proper(x1) weight: x1 ok(x1) weight: x1 0() weight: 0 odds() weight: 0 mark(x1) weight: x1 nats() weight: 0 active(x1) weight: x1 head(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: x1 + x2 Number of strict rules: 30 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #active(pairs()) -> #cons(0(),incr(odds())) #2: #active(pairs()) -> #incr(odds()) #3: #head(ok(X)) -> #head(X) #4: #incr(mark(X)) -> #incr(X) #5: #active(s(X)) -> #s(active(X)) #6: #active(s(X)) -> #active(X) #7: #active(tail(X)) -> #tail(active(X)) #8: #active(tail(X)) -> #active(X) #9: #proper(head(X)) -> #head(proper(X)) #10: #proper(head(X)) -> #proper(X) #11: #proper(s(X)) -> #s(proper(X)) #12: #proper(s(X)) -> #proper(X) #13: #cons(mark(X1),X2) -> #cons(X1,X2) #14: #top(mark(X)) -> #top(proper(X)) #15: #top(mark(X)) -> #proper(X) #16: #s(mark(X)) -> #s(X) #17: #tail(ok(X)) -> #tail(X) #18: #proper(tail(X)) -> #tail(proper(X)) #19: #proper(tail(X)) -> #proper(X) #20: #proper(incr(X)) -> #incr(proper(X)) #21: #proper(incr(X)) -> #proper(X) #22: #active(cons(X1,X2)) -> #cons(active(X1),X2) #23: #active(cons(X1,X2)) -> #active(X1) #24: #active(head(X)) -> #head(active(X)) #25: #active(head(X)) -> #active(X) #26: #s(ok(X)) -> #s(X) #27: #incr(ok(X)) -> #incr(X) #28: #top(ok(X)) -> #top(active(X)) #29: #top(ok(X)) -> #active(X) #30: #cons(ok(X1),ok(X2)) -> #cons(X1,X2) #31: #tail(mark(X)) -> #tail(X) #32: #active(odds()) -> #incr(pairs()) #33: #active(nats()) -> #cons(0(),incr(nats())) #34: #active(nats()) -> #incr(nats()) #35: #active(incr(X)) -> #incr(active(X)) #36: #active(incr(X)) -> #active(X) #37: #head(mark(X)) -> #head(X) #38: #active(incr(cons(X,XS))) -> #cons(s(X),incr(XS)) #39: #active(incr(cons(X,XS))) -> #s(X) #40: #active(incr(cons(X,XS))) -> #incr(XS) #41: #proper(cons(X1,X2)) -> #cons(proper(X1),proper(X2)) #42: #proper(cons(X1,X2)) -> #proper(X1) #43: #proper(cons(X1,X2)) -> #proper(X2) Number of SCCs: 8, DPs: 23, edges: 85 SCC { #4 #27 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: 0 #cons(x1,x2) weight: 0 s(x1) weight: 0 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #incr(x1) weight: x1 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: 0 head(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #4 #27 Number of SCCs: 7, DPs: 21, edges: 81 SCC { #17 #31 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: 0 #cons(x1,x2) weight: 0 s(x1) weight: 0 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: x1 mark(x1) weight: (/ 1 2) + x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: 0 head(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #17 #31 Number of SCCs: 6, DPs: 19, edges: 77 SCC { #16 #26 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: 0 #cons(x1,x2) weight: 0 s(x1) weight: 0 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #s(x1) weight: x1 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: 0 head(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #16 #26 Number of SCCs: 5, DPs: 17, edges: 73 SCC { #3 #37 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: 0 #cons(x1,x2) weight: 0 s(x1) weight: 0 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: x1 tail(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: 0 head(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #3 #37 Number of SCCs: 4, DPs: 15, edges: 69 SCC { #14 #28 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. incr(x1) weight: (/ 3 8) + x1 #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 8) + x1 top(x1) weight: 0 pairs() weight: (/ 1 2) #top(x1) weight: x1 #head(x1) weight: 0 tail(x1) weight: (/ 1 8) + x1 proper(x1) weight: (/ 1 4) + x1 ok(x1) weight: (/ 1 4) + x1 0() weight: (/ 1 8) #s(x1) weight: 0 odds() weight: (/ 9 8) #tail(x1) weight: 0 mark(x1) weight: (/ 3 8) + x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: (/ 1 2) active(x1) weight: (/ 1 8) + x1 head(x1) weight: (/ 1 8) + x1 cons(x1,x2) weight: max{0, (/ 1 8) + x1} #active(x1) weight: 0 Usable rules: { 1..4 7..30 } Removed DPs: #14 #28 Number of SCCs: 3, DPs: 13, edges: 65 SCC { #13 #30 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: (/ 1 4) #cons(x1,x2) weight: x2 s(x1) weight: (/ 1 4) top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: (/ 1 4) proper(x1) weight: (/ 1 8) ok(x1) weight: (/ 1 4) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: (/ 1 2) #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: (/ 1 8) + x1 head(x1) weight: (/ 1 4) cons(x1,x2) weight: (/ 1 8) + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #30 Number of SCCs: 3, DPs: 12, edges: 62 SCC { #13 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: (/ 1 2) #cons(x1,x2) weight: x1 s(x1) weight: (/ 1 2) top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: (/ 1 2) proper(x1) weight: (/ 1 4) ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: (/ 1 4) + x1 head(x1) weight: (/ 1 2) cons(x1,x2) weight: x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #13 Number of SCCs: 2, DPs: 11, edges: 61 SCC { #6 #8 #23 #25 #36 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: (/ 1 4) + x1 #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: (/ 1 4) + x1 proper(x1) weight: 0 ok(x1) weight: x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: x1 #incr(x1) weight: 0 #proper(x1) weight: 0 nats() weight: 0 active(x1) weight: x1 head(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x1 #active(x1) weight: x1 Usable rules: { } Removed DPs: #6 #8 #23 #25 #36 Number of SCCs: 2, DPs: 6, edges: 36 SCC { #10 #12 #19 #21 #42 #43 } Removing DPs: Order(PosReal,>,Sum)... succeeded. incr(x1) weight: (/ 1 4) + x1 #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 pairs() weight: 0 #top(x1) weight: 0 #head(x1) weight: 0 tail(x1) weight: (/ 1 4) + x1 proper(x1) weight: (/ 1 4) ok(x1) weight: (/ 1 4) + x1 0() weight: 0 #s(x1) weight: 0 odds() weight: 0 #tail(x1) weight: 0 mark(x1) weight: x1 #incr(x1) weight: 0 #proper(x1) weight: x1 nats() weight: 0 active(x1) weight: x1 head(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x1 + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #10 #12 #19 #21 #42 #43 Number of SCCs: 1, DPs: 0, edges: 0 YES