Input TRS: 1: active(dbl(0())) -> mark(0()) 2: active(dbl(s(X))) -> mark(s(s(dbl(X)))) 3: active(dbls(nil())) -> mark(nil()) 4: active(dbls(cons(X,Y))) -> mark(cons(dbl(X),dbls(Y))) 5: active(sel(0(),cons(X,Y))) -> mark(X) 6: active(sel(s(X),cons(Y,Z))) -> mark(sel(X,Z)) 7: active(indx(nil(),X)) -> mark(nil()) 8: active(indx(cons(X,Y),Z)) -> mark(cons(sel(X,Z),indx(Y,Z))) 9: active(from(X)) -> mark(cons(X,from(s(X)))) 10: active(dbl(X)) -> dbl(active(X)) 11: active(dbls(X)) -> dbls(active(X)) 12: active(sel(X1,X2)) -> sel(active(X1),X2) 13: active(sel(X1,X2)) -> sel(X1,active(X2)) 14: active(indx(X1,X2)) -> indx(active(X1),X2) 15: dbl(mark(X)) -> mark(dbl(X)) 16: dbls(mark(X)) -> mark(dbls(X)) 17: sel(mark(X1),X2) -> mark(sel(X1,X2)) 18: sel(X1,mark(X2)) -> mark(sel(X1,X2)) 19: indx(mark(X1),X2) -> mark(indx(X1,X2)) 20: proper(dbl(X)) -> dbl(proper(X)) 21: proper(0()) -> ok(0()) 22: proper(s(X)) -> s(proper(X)) 23: proper(dbls(X)) -> dbls(proper(X)) 24: proper(nil()) -> ok(nil()) 25: proper(cons(X1,X2)) -> cons(proper(X1),proper(X2)) 26: proper(sel(X1,X2)) -> sel(proper(X1),proper(X2)) 27: proper(indx(X1,X2)) -> indx(proper(X1),proper(X2)) 28: proper(from(X)) -> from(proper(X)) 29: dbl(ok(X)) -> ok(dbl(X)) 30: s(ok(X)) -> ok(s(X)) 31: dbls(ok(X)) -> ok(dbls(X)) 32: cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) 33: sel(ok(X1),ok(X2)) -> ok(sel(X1,X2)) 34: indx(ok(X1),ok(X2)) -> ok(indx(X1,X2)) 35: from(ok(X)) -> ok(from(X)) 36: top(mark(X)) -> top(proper(X)) 37: top(ok(X)) -> top(active(X)) Number of strict rules: 37 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #active(dbl(s(X))) -> #s(s(dbl(X))) #2: #active(dbl(s(X))) -> #s(dbl(X)) #3: #active(dbl(s(X))) -> #dbl(X) #4: #dbl(ok(X)) -> #dbl(X) #5: #from(ok(X)) -> #from(X) #6: #top(ok(X)) -> #top(active(X)) #7: #top(ok(X)) -> #active(X) #8: #active(sel(s(X),cons(Y,Z))) -> #sel(X,Z) #9: #active(sel(X1,X2)) -> #sel(X1,active(X2)) #10: #active(sel(X1,X2)) -> #active(X2) #11: #active(from(X)) -> #cons(X,from(s(X))) #12: #active(from(X)) -> #from(s(X)) #13: #active(from(X)) -> #s(X) #14: #active(dbls(X)) -> #dbls(active(X)) #15: #active(dbls(X)) -> #active(X) #16: #proper(dbls(X)) -> #dbls(proper(X)) #17: #proper(dbls(X)) -> #proper(X) #18: #active(sel(X1,X2)) -> #sel(active(X1),X2) #19: #active(sel(X1,X2)) -> #active(X1) #20: #dbls(ok(X)) -> #dbls(X) #21: #active(indx(X1,X2)) -> #indx(active(X1),X2) #22: #active(indx(X1,X2)) -> #active(X1) #23: #s(ok(X)) -> #s(X) #24: #proper(cons(X1,X2)) -> #cons(proper(X1),proper(X2)) #25: #proper(cons(X1,X2)) -> #proper(X1) #26: #proper(cons(X1,X2)) -> #proper(X2) #27: #proper(dbl(X)) -> #dbl(proper(X)) #28: #proper(dbl(X)) -> #proper(X) #29: #active(dbl(X)) -> #dbl(active(X)) #30: #active(dbl(X)) -> #active(X) #31: #sel(ok(X1),ok(X2)) -> #sel(X1,X2) #32: #proper(from(X)) -> #from(proper(X)) #33: #proper(from(X)) -> #proper(X) #34: #proper(s(X)) -> #s(proper(X)) #35: #proper(s(X)) -> #proper(X) #36: #indx(ok(X1),ok(X2)) -> #indx(X1,X2) #37: #proper(indx(X1,X2)) -> #indx(proper(X1),proper(X2)) #38: #proper(indx(X1,X2)) -> #proper(X1) #39: #proper(indx(X1,X2)) -> #proper(X2) #40: #sel(mark(X1),X2) -> #sel(X1,X2) #41: #cons(ok(X1),ok(X2)) -> #cons(X1,X2) #42: #indx(mark(X1),X2) -> #indx(X1,X2) #43: #proper(sel(X1,X2)) -> #sel(proper(X1),proper(X2)) #44: #proper(sel(X1,X2)) -> #proper(X1) #45: #proper(sel(X1,X2)) -> #proper(X2) #46: #top(mark(X)) -> #top(proper(X)) #47: #top(mark(X)) -> #proper(X) #48: #dbls(mark(X)) -> #dbls(X) #49: #active(indx(cons(X,Y),Z)) -> #cons(sel(X,Z),indx(Y,Z)) #50: #active(indx(cons(X,Y),Z)) -> #sel(X,Z) #51: #active(indx(cons(X,Y),Z)) -> #indx(Y,Z) #52: #dbl(mark(X)) -> #dbl(X) #53: #active(dbls(cons(X,Y))) -> #cons(dbl(X),dbls(Y)) #54: #active(dbls(cons(X,Y))) -> #dbl(X) #55: #active(dbls(cons(X,Y))) -> #dbls(Y) #56: #sel(X1,mark(X2)) -> #sel(X1,X2) Number of SCCs: 10, DPs: 29, edges: 153 SCC { #23 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: 0 dbl(x1) weight: 0 top(x1) weight: 0 indx(x1,x2) weight: 0 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: 0 from(x1) weight: 0 #s(x1) weight: x1 nil() weight: 0 mark(x1) weight: 0 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #23 Number of SCCs: 9, DPs: 28, edges: 152 SCC { #5 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: 0 dbl(x1) weight: 0 top(x1) weight: 0 indx(x1,x2) weight: 0 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: 0 from(x1) weight: 0 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: 0 #proper(x1) weight: 0 #from(x1) weight: x1 active(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #5 Number of SCCs: 8, DPs: 27, edges: 151 SCC { #41 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: x2 s(x1) weight: 0 dbls(x1) weight: 0 dbl(x1) weight: 0 top(x1) weight: 0 indx(x1,x2) weight: 0 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: 0 from(x1) weight: 0 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: 0 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #41 Number of SCCs: 7, DPs: 26, edges: 150 SCC { #20 #48 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: 0 dbl(x1) weight: 0 top(x1) weight: 0 indx(x1,x2) weight: 0 #dbl(x1) weight: 0 #dbls(x1) weight: x1 #top(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: 0 from(x1) weight: 0 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 2) + x1 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #20 #48 Number of SCCs: 6, DPs: 24, edges: 146 SCC { #4 #52 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: 0 dbl(x1) weight: 0 top(x1) weight: 0 indx(x1,x2) weight: 0 #dbl(x1) weight: x1 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: 0 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: 0 from(x1) weight: 0 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 2) + x1 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: 0 cons(x1,x2) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #4 #52 Number of SCCs: 5, DPs: 22, edges: 142 SCC { #6 #46 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... succeeded. #cons(x1,x2) weight: x2 status: [x2] precedence above: s(x1) weight: x1 status: [x1] precedence above: dbls(x1) weight: (/ 1 4) + x1 status: [x1] precedence above: s dbl ok sel nil mark cons dbl(x1) weight: (/ 1 4) + x1 status: [x1] precedence above: s ok mark top(x1) weight: (/ 1 4) status: [] precedence above: indx(x1,x2) weight: (/ 1 4) + x2 + x1 status: [x1] precedence above: ok sel nil mark cons #dbl(x1) weight: (/ 1 4) status: [] precedence above: #dbls(x1) weight: (/ 1 4) status: [] precedence above: #top(x1) weight: (/ 1 4) + x1 status: [x1] precedence above: proper(x1) weight: x1 status: x1 ok(x1) weight: x1 status: x1 0() weight: (/ 1 4) status: [] precedence above: proper #sel(x1,x2) weight: (/ 1 4) + x2 + x1 status: [x1,x2] precedence above: #indx(x1,x2) weight: x2 status: [x2] precedence above: sel(x1,x2) weight: (/ 1 4) + x2 + x1 status: [x1,x2] precedence above: ok mark from(x1) weight: (/ 1 4) + x1 status: [] precedence above: s ok mark cons #s(x1) weight: x1 status: [] precedence above: nil() weight: (/ 1 4) status: [] precedence above: mark(x1) weight: x1 status: [x1] precedence above: ok #proper(x1) weight: x1 status: [] precedence above: #from(x1) weight: x1 status: [] precedence above: active(x1) weight: x1 status: x1 cons(x1,x2) weight: max{x2, x1} status: [x1] precedence above: #active(x1) weight: x1 status: [] precedence above: Usable rules: { 1..35 } Removed DPs: #46 Number of SCCs: 5, DPs: 21, edges: 139 SCC { #6 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 4) + x1 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: x1 proper(x1) weight: (/ 1 2) + x1 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: (/ 1 4) + x1 from(x1) weight: (/ 1 4) + x1 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: 0 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x2 #active(x1) weight: 0 Usable rules: { 1..19 29..35 } Removed DPs: #6 Number of SCCs: 4, DPs: 20, edges: 138 SCC { #36 #42 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 4) + x1 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: x1 proper(x1) weight: (/ 1 2) + x1 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: x2 sel(x1,x2) weight: (/ 1 4) + x1 from(x1) weight: (/ 1 4) + x1 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: 0 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #36 Number of SCCs: 5, DPs: 19, edges: 135 SCC { #42 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x1 + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: x1 ok(x1) weight: (/ 1 4) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: x1 sel(x1,x2) weight: (/ 1 4) + x1 from(x1) weight: (/ 1 4) #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 4) + x1 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #42 Number of SCCs: 4, DPs: 18, edges: 134 SCC { #31 #40 #56 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x1 + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: x1 ok(x1) weight: (/ 1 4) + x1 0() weight: 0 #sel(x1,x2) weight: x1 + x2 #indx(x1,x2) weight: 0 sel(x1,x2) weight: (/ 1 4) + x1 from(x1) weight: (/ 1 4) #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 4) + x1 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #31 #40 #56 Number of SCCs: 4, DPs: 15, edges: 125 SCC { #10 #15 #19 #22 #30 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: 0 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x1 + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: x1 ok(x1) weight: (/ 1 4) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: (/ 1 4) + x1 + x2 from(x1) weight: (/ 1 4) #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 4) + x1 #proper(x1) weight: 0 #from(x1) weight: 0 active(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: (/ 1 4) + x2 #active(x1) weight: x1 Usable rules: { } Removed DPs: #10 #15 #19 #22 #30 Number of SCCs: 3, DPs: 10, edges: 100 SCC { #17 #25 #26 #28 #33 #35 #38 #39 #44 #45 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #cons(x1,x2) weight: 0 s(x1) weight: (/ 1 4) + x1 dbls(x1) weight: (/ 1 4) + x1 dbl(x1) weight: (/ 1 4) + x1 top(x1) weight: 0 indx(x1,x2) weight: (/ 1 4) + x1 + x2 #dbl(x1) weight: 0 #dbls(x1) weight: 0 #top(x1) weight: 0 proper(x1) weight: (/ 1 4) + x1 ok(x1) weight: (/ 1 2) + x1 0() weight: 0 #sel(x1,x2) weight: 0 #indx(x1,x2) weight: 0 sel(x1,x2) weight: (/ 1 4) + x1 + x2 from(x1) weight: (/ 1 4) + x1 #s(x1) weight: 0 nil() weight: 0 mark(x1) weight: (/ 1 4) + x1 #proper(x1) weight: x1 #from(x1) weight: 0 active(x1) weight: (/ 1 2) + x1 cons(x1,x2) weight: (/ 1 4) + x1 + x2 #active(x1) weight: 0 Usable rules: { } Removed DPs: #17 #25 #26 #28 #33 #35 #38 #39 #44 #45 Number of SCCs: 2, DPs: 0, edges: 0 YES