Input TRS: 1: U101(tt(),N,XS) -> fst(splitAt(activate(N),activate(XS))) 2: U11(tt(),N,XS) -> snd(splitAt(activate(N),activate(XS))) 3: U21(tt(),X) -> activate(X) 4: U31(tt(),N) -> activate(N) 5: U41(tt(),N) -> cons(activate(N),n__natsFrom(s(activate(N)))) 6: U51(tt(),N,XS) -> head(afterNth(activate(N),activate(XS))) 7: U61(tt(),Y) -> activate(Y) 8: U71(tt(),XS) -> pair(nil(),activate(XS)) 9: U81(tt(),N,X,XS) -> U82(splitAt(activate(N),activate(XS)),activate(X)) 10: U82(pair(YS,ZS),X) -> pair(cons(activate(X),YS),ZS) 11: U91(tt(),XS) -> activate(XS) 12: afterNth(N,XS) -> U11(and(isNatural(N),n__isLNat(XS)),N,XS) 13: and(tt(),X) -> activate(X) 14: fst(pair(X,Y)) -> U21(and(isLNat(X),n__isLNat(Y)),X) 15: head(cons(N,XS)) -> U31(and(isNatural(N),n__isLNat(activate(XS))),N) 16: isLNat(n__nil()) -> tt() 17: isLNat(n__afterNth(V1,V2)) -> and(isNatural(activate(V1)),n__isLNat(activate(V2))) 18: isLNat(n__cons(V1,V2)) -> and(isNatural(activate(V1)),n__isLNat(activate(V2))) 19: isLNat(n__fst(V1)) -> isPLNat(activate(V1)) 20: isLNat(n__natsFrom(V1)) -> isNatural(activate(V1)) 21: isLNat(n__snd(V1)) -> isPLNat(activate(V1)) 22: isLNat(n__tail(V1)) -> isLNat(activate(V1)) 23: isLNat(n__take(V1,V2)) -> and(isNatural(activate(V1)),n__isLNat(activate(V2))) 24: isNatural(n__0()) -> tt() 25: isNatural(n__head(V1)) -> isLNat(activate(V1)) 26: isNatural(n__s(V1)) -> isNatural(activate(V1)) 27: isNatural(n__sel(V1,V2)) -> and(isNatural(activate(V1)),n__isLNat(activate(V2))) 28: isPLNat(n__pair(V1,V2)) -> and(isLNat(activate(V1)),n__isLNat(activate(V2))) 29: isPLNat(n__splitAt(V1,V2)) -> and(isNatural(activate(V1)),n__isLNat(activate(V2))) 30: natsFrom(N) -> U41(isNatural(N),N) 31: sel(N,XS) -> U51(and(isNatural(N),n__isLNat(XS)),N,XS) 32: snd(pair(X,Y)) -> U61(and(isLNat(X),n__isLNat(Y)),Y) 33: splitAt(0(),XS) -> U71(isLNat(XS),XS) 34: splitAt(s(N),cons(X,XS)) -> U81(and(isNatural(N),n__and(isNatural(X),n__isLNat(activate(XS)))),N,X,activate(XS)) 35: tail(cons(N,XS)) -> U91(and(isNatural(N),n__isLNat(activate(XS))),activate(XS)) 36: take(N,XS) -> U101(and(isNatural(N),n__isLNat(XS)),N,XS) 37: natsFrom(X) -> n__natsFrom(X) 38: isLNat(X) -> n__isLNat(X) 39: nil() -> n__nil() 40: afterNth(X1,X2) -> n__afterNth(X1,X2) 41: cons(X1,X2) -> n__cons(X1,X2) 42: fst(X) -> n__fst(X) 43: snd(X) -> n__snd(X) 44: tail(X) -> n__tail(X) 45: take(X1,X2) -> n__take(X1,X2) 46: 0() -> n__0() 47: head(X) -> n__head(X) 48: s(X) -> n__s(X) 49: sel(X1,X2) -> n__sel(X1,X2) 50: pair(X1,X2) -> n__pair(X1,X2) 51: splitAt(X1,X2) -> n__splitAt(X1,X2) 52: and(X1,X2) -> n__and(X1,X2) 53: activate(n__natsFrom(X)) -> natsFrom(X) 54: activate(n__isLNat(X)) -> isLNat(X) 55: activate(n__nil()) -> nil() 56: activate(n__afterNth(X1,X2)) -> afterNth(X1,X2) 57: activate(n__cons(X1,X2)) -> cons(X1,X2) 58: activate(n__fst(X)) -> fst(X) 59: activate(n__snd(X)) -> snd(X) 60: activate(n__tail(X)) -> tail(X) 61: activate(n__take(X1,X2)) -> take(X1,X2) 62: activate(n__0()) -> 0() 63: activate(n__head(X)) -> head(X) 64: activate(n__s(X)) -> s(X) 65: activate(n__sel(X1,X2)) -> sel(X1,X2) 66: activate(n__pair(X1,X2)) -> pair(X1,X2) 67: activate(n__splitAt(X1,X2)) -> splitAt(X1,X2) 68: activate(n__and(X1,X2)) -> and(X1,X2) 69: activate(X) -> X Number of strict rules: 69 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #U11(tt(),N,XS) -> #snd(splitAt(activate(N),activate(XS))) #2: #U11(tt(),N,XS) -> #splitAt(activate(N),activate(XS)) #3: #U11(tt(),N,XS) -> #activate(N) #4: #U11(tt(),N,XS) -> #activate(XS) #5: #isPLNat(n__splitAt(V1,V2)) -> #and(isNatural(activate(V1)),n__isLNat(activate(V2))) #6: #isPLNat(n__splitAt(V1,V2)) -> #isNatural(activate(V1)) #7: #isPLNat(n__splitAt(V1,V2)) -> #activate(V1) #8: #isPLNat(n__splitAt(V1,V2)) -> #activate(V2) #9: #tail(cons(N,XS)) -> #U91(and(isNatural(N),n__isLNat(activate(XS))),activate(XS)) #10: #tail(cons(N,XS)) -> #and(isNatural(N),n__isLNat(activate(XS))) #11: #tail(cons(N,XS)) -> #isNatural(N) #12: #tail(cons(N,XS)) -> #activate(XS) #13: #tail(cons(N,XS)) -> #activate(XS) #14: #activate(n__pair(X1,X2)) -> #pair(X1,X2) #15: #activate(n__natsFrom(X)) -> #natsFrom(X) #16: #activate(n__fst(X)) -> #fst(X) #17: #activate(n__take(X1,X2)) -> #take(X1,X2) #18: #U51(tt(),N,XS) -> #head(afterNth(activate(N),activate(XS))) #19: #U51(tt(),N,XS) -> #afterNth(activate(N),activate(XS)) #20: #U51(tt(),N,XS) -> #activate(N) #21: #U51(tt(),N,XS) -> #activate(XS) #22: #activate(n__snd(X)) -> #snd(X) #23: #activate(n__nil()) -> #nil() #24: #activate(n__splitAt(X1,X2)) -> #splitAt(X1,X2) #25: #and(tt(),X) -> #activate(X) #26: #U81(tt(),N,X,XS) -> #U82(splitAt(activate(N),activate(XS)),activate(X)) #27: #U81(tt(),N,X,XS) -> #splitAt(activate(N),activate(XS)) #28: #U81(tt(),N,X,XS) -> #activate(N) #29: #U81(tt(),N,X,XS) -> #activate(XS) #30: #U81(tt(),N,X,XS) -> #activate(X) #31: #U91(tt(),XS) -> #activate(XS) #32: #activate(n__cons(X1,X2)) -> #cons(X1,X2) #33: #isLNat(n__take(V1,V2)) -> #and(isNatural(activate(V1)),n__isLNat(activate(V2))) #34: #isLNat(n__take(V1,V2)) -> #isNatural(activate(V1)) #35: #isLNat(n__take(V1,V2)) -> #activate(V1) #36: #isLNat(n__take(V1,V2)) -> #activate(V2) #37: #afterNth(N,XS) -> #U11(and(isNatural(N),n__isLNat(XS)),N,XS) #38: #afterNth(N,XS) -> #and(isNatural(N),n__isLNat(XS)) #39: #afterNth(N,XS) -> #isNatural(N) #40: #sel(N,XS) -> #U51(and(isNatural(N),n__isLNat(XS)),N,XS) #41: #sel(N,XS) -> #and(isNatural(N),n__isLNat(XS)) #42: #sel(N,XS) -> #isNatural(N) #43: #activate(n__afterNth(X1,X2)) -> #afterNth(X1,X2) #44: #fst(pair(X,Y)) -> #U21(and(isLNat(X),n__isLNat(Y)),X) #45: #fst(pair(X,Y)) -> #and(isLNat(X),n__isLNat(Y)) #46: #fst(pair(X,Y)) -> #isLNat(X) #47: #activate(n__0()) -> #0() #48: #natsFrom(N) -> #U41(isNatural(N),N) #49: #natsFrom(N) -> #isNatural(N) #50: #isNatural(n__head(V1)) -> #isLNat(activate(V1)) #51: #isNatural(n__head(V1)) -> #activate(V1) #52: #isLNat(n__natsFrom(V1)) -> #isNatural(activate(V1)) #53: #isLNat(n__natsFrom(V1)) -> #activate(V1) #54: #U61(tt(),Y) -> #activate(Y) #55: #U82(pair(YS,ZS),X) -> #pair(cons(activate(X),YS),ZS) #56: #U82(pair(YS,ZS),X) -> #cons(activate(X),YS) #57: #U82(pair(YS,ZS),X) -> #activate(X) #58: #activate(n__s(X)) -> #s(X) #59: #splitAt(0(),XS) -> #U71(isLNat(XS),XS) #60: #splitAt(0(),XS) -> #isLNat(XS) #61: #U41(tt(),N) -> #cons(activate(N),n__natsFrom(s(activate(N)))) #62: #U41(tt(),N) -> #activate(N) #63: #U41(tt(),N) -> #s(activate(N)) #64: #U41(tt(),N) -> #activate(N) #65: #activate(n__sel(X1,X2)) -> #sel(X1,X2) #66: #isPLNat(n__pair(V1,V2)) -> #and(isLNat(activate(V1)),n__isLNat(activate(V2))) #67: #isPLNat(n__pair(V1,V2)) -> #isLNat(activate(V1)) #68: #isPLNat(n__pair(V1,V2)) -> #activate(V1) #69: #isPLNat(n__pair(V1,V2)) -> #activate(V2) #70: #isLNat(n__tail(V1)) -> #isLNat(activate(V1)) #71: #isLNat(n__tail(V1)) -> #activate(V1) #72: #splitAt(s(N),cons(X,XS)) -> #U81(and(isNatural(N),n__and(isNatural(X),n__isLNat(activate(XS)))),N,X,activate(XS)) #73: #splitAt(s(N),cons(X,XS)) -> #and(isNatural(N),n__and(isNatural(X),n__isLNat(activate(XS)))) #74: #splitAt(s(N),cons(X,XS)) -> #isNatural(N) #75: #splitAt(s(N),cons(X,XS)) -> #isNatural(X) #76: #splitAt(s(N),cons(X,XS)) -> #activate(XS) #77: #splitAt(s(N),cons(X,XS)) -> #activate(XS) #78: #isNatural(n__sel(V1,V2)) -> #and(isNatural(activate(V1)),n__isLNat(activate(V2))) #79: #isNatural(n__sel(V1,V2)) -> #isNatural(activate(V1)) #80: #isNatural(n__sel(V1,V2)) -> #activate(V1) #81: #isNatural(n__sel(V1,V2)) -> #activate(V2) #82: #activate(n__tail(X)) -> #tail(X) #83: #isLNat(n__afterNth(V1,V2)) -> #and(isNatural(activate(V1)),n__isLNat(activate(V2))) #84: #isLNat(n__afterNth(V1,V2)) -> #isNatural(activate(V1)) #85: #isLNat(n__afterNth(V1,V2)) -> #activate(V1) #86: #isLNat(n__afterNth(V1,V2)) -> #activate(V2) #87: #snd(pair(X,Y)) -> #U61(and(isLNat(X),n__isLNat(Y)),Y) #88: #snd(pair(X,Y)) -> #and(isLNat(X),n__isLNat(Y)) #89: #snd(pair(X,Y)) -> #isLNat(X) #90: #isLNat(n__fst(V1)) -> #isPLNat(activate(V1)) #91: #isLNat(n__fst(V1)) -> #activate(V1) #92: #activate(n__head(X)) -> #head(X) #93: #isNatural(n__s(V1)) -> #isNatural(activate(V1)) #94: #isNatural(n__s(V1)) -> #activate(V1) #95: #activate(n__and(X1,X2)) -> #and(X1,X2) #96: #take(N,XS) -> #U101(and(isNatural(N),n__isLNat(XS)),N,XS) #97: #take(N,XS) -> #and(isNatural(N),n__isLNat(XS)) #98: #take(N,XS) -> #isNatural(N) #99: #isLNat(n__snd(V1)) -> #isPLNat(activate(V1)) #100: #isLNat(n__snd(V1)) -> #activate(V1) #101: #U21(tt(),X) -> #activate(X) #102: #U101(tt(),N,XS) -> #fst(splitAt(activate(N),activate(XS))) #103: #U101(tt(),N,XS) -> #splitAt(activate(N),activate(XS)) #104: #U101(tt(),N,XS) -> #activate(N) #105: #U101(tt(),N,XS) -> #activate(XS) #106: #activate(n__isLNat(X)) -> #isLNat(X) #107: #U71(tt(),XS) -> #pair(nil(),activate(XS)) #108: #U71(tt(),XS) -> #nil() #109: #U71(tt(),XS) -> #activate(XS) #110: #head(cons(N,XS)) -> #U31(and(isNatural(N),n__isLNat(activate(XS))),N) #111: #head(cons(N,XS)) -> #and(isNatural(N),n__isLNat(activate(XS))) #112: #head(cons(N,XS)) -> #isNatural(N) #113: #head(cons(N,XS)) -> #activate(XS) #114: #U31(tt(),N) -> #activate(N) #115: #isLNat(n__cons(V1,V2)) -> #and(isNatural(activate(V1)),n__isLNat(activate(V2))) #116: #isLNat(n__cons(V1,V2)) -> #isNatural(activate(V1)) #117: #isLNat(n__cons(V1,V2)) -> #activate(V1) #118: #isLNat(n__cons(V1,V2)) -> #activate(V2) Number of SCCs: 1, DPs: 107, edges: 838 SCC { #1..13 #15..22 #24..31 #33..46 #48..54 #57 #59 #60 #62 #64..106 #109..118 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. #0() weight: 0 U21(x1,x2) weight: max{0, 5497 + x2} U11(x1,x2,x3) weight: max{24188 + x3, (/ 96751 4) + x2, x1} #cons(x1,x2) weight: 0 s(x1) weight: x1 n__pair(x1,x2) weight: max{5497 + x2, (/ 21987 4) + x1} #take(x1,x2) weight: max{42879 + x2, 42879 + x1} isPLNat(x1) weight: (/ 1 2) + x1 U91(x1,x2) weight: max{(/ 74765 4) + x2, x1} #U101(x1,x2,x3) weight: max{(/ 160523 4) + x3, (/ 160523 4) + x2, (/ 74765 4) + x1} activate(x1) weight: x1 n__isLNat(x1) weight: (/ 1 4) + x1 #U82(x1,x2) weight: max{0, (/ 42879 2) + x2} take(x1,x2) weight: max{21440 + x2, (/ 96751 4) + x1} U71(x1,x2) weight: max{5497 + x2, (/ 42879 2) + x1} #U81(x1,x2,x3,x4) weight: max{0, (/ 80261 2) + x4, (/ 257271 4) + x3, (/ 160521 4) + x2} and(x1,x2) weight: max{x2, (/ 21987 4) + x1} U101(x1,x2,x3) weight: max{0, 21440 + x3, (/ 96751 4) + x2} pair(x1,x2) weight: max{5497 + x2, (/ 21987 4) + x1} fst(x1) weight: (/ 1 4) + x1 #activate(x1) weight: (/ 85757 4) + x1 natsFrom(x1) weight: (/ 96749 4) + x1 #head(x1) weight: (/ 160519 4) + x1 splitAt(x1,x2) weight: max{(/ 85759 4) + x2, (/ 48375 2) + x1} #fst(x1) weight: 15943 + x1 n__nil() weight: (/ 85757 4) n__natsFrom(x1) weight: (/ 96749 4) + x1 isNatural(x1) weight: (/ 74763 4) + x1 n__snd(x1) weight: (/ 1 4) + x1 n__s(x1) weight: x1 n__splitAt(x1,x2) weight: max{(/ 85759 4) + x2, (/ 48375 2) + x1} tail(x1) weight: (/ 74765 4) + x1 0() weight: (/ 10995 4) n__take(x1,x2) weight: max{21440 + x2, (/ 96751 4) + x1} #sel(x1,x2) weight: max{(/ 268265 4) + x2, (/ 268265 4) + x1} #isLNat(x1) weight: (/ 42879 2) + x1 sel(x1,x2) weight: max{(/ 182509 4) + x2, (/ 91255 2) + x1} #s(x1) weight: 0 afterNth(x1,x2) weight: max{24188 + x2, (/ 96751 4) + x1} n__cons(x1,x2) weight: max{x2, (/ 96749 4) + x1} #isPLNat(x1) weight: (/ 37381 2) + x1 nil() weight: (/ 85757 4) isLNat(x1) weight: (/ 1 4) + x1 n__sel(x1,x2) weight: max{(/ 182509 4) + x2, (/ 91255 2) + x1} #tail(x1) weight: (/ 160521 4) + x1 #splitAt(x1,x2) weight: max{(/ 80261 2) + x2, (/ 160521 4) + x1} #nil() weight: 0 n__tail(x1) weight: (/ 74765 4) + x1 #afterNth(x1,x2) weight: max{40131 + x2, 40131 + x1} n__0() weight: (/ 10995 4) n__afterNth(x1,x2) weight: max{24188 + x2, (/ 96751 4) + x1} U61(x1,x2) weight: max{(/ 21989 4) + x2, x1} #U51(x1,x2,x3) weight: max{64318 + x3, 64318 + x2, (/ 85757 2) + x1} n__fst(x1) weight: (/ 1 4) + x1 #U11(x1,x2,x3) weight: max{0, (/ 160523 4) + x3, (/ 160523 4) + x2} U31(x1,x2) weight: max{18691 + x2, x1} head(x1) weight: (/ 74763 4) + x1 #snd(x1) weight: 15943 + x1 #U41(x1,x2) weight: max{0, (/ 42879 2) + x2} cons(x1,x2) weight: max{x2, (/ 96749 4) + x1} #natsFrom(x1) weight: (/ 160521 4) + x1 snd(x1) weight: (/ 1 4) + x1 #U21(x1,x2) weight: max{0, (/ 42879 2) + x2} U81(x1,x2,x3,x4) weight: max{(/ 85759 4) + x4, 29684 + x3, (/ 48375 2) + x2, x1} U82(x1,x2) weight: max{29684 + x2, x1} tt() weight: (/ 42879 2) n__and(x1,x2) weight: max{x2, (/ 21987 4) + x1} #U71(x1,x2) weight: max{0, (/ 160521 4) + x2} #isNatural(x1) weight: 40130 + x1 #pair(x1,x2) weight: 0 n__head(x1) weight: (/ 74763 4) + x1 U51(x1,x2,x3) weight: max{0, (/ 171515 4) + x3, (/ 85757 2) + x2} U41(x1,x2) weight: max{0, (/ 96749 4) + x2} #U31(x1,x2) weight: max{(/ 42879 2) + x2, x1} #and(x1,x2) weight: max{0, (/ 85757 4) + x2} #U91(x1,x2) weight: max{0, (/ 42879 2) + x2} #U61(x1,x2) weight: max{0, (/ 42879 2) + x2} Usable rules: { 1..69 } Removed DPs: #1..13 #15..22 #24 #26 #28..31 #33..46 #48..54 #57 #59 #60 #62 #64..71 #73..92 #94 #96..105 #109..114 #116..118 Number of SCCs: 3, DPs: 7, edges: 8 SCC { #93 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... succeeded. #0() weight: 0 status: [] precedence above: U21(x1,x2) weight: max{0, (/ 5 32) + x2} status: [x2] precedence above: U11(x1,x2,x3) weight: max{(/ 77805 8) + x3, (/ 311229 32) + x2, (/ 38903 4) + x1} status: [] precedence above: n__pair isPLNat n__isLNat U71 and pair splitAt isNatural n__snd n__splitAt n__cons isLNat U61 cons snd U81 U82 tt #cons(x1,x2) weight: (/ 1 32) + x1 status: [x1] precedence above: s(x1) weight: x1 status: [x1] precedence above: n__s n__pair(x1,x2) weight: max{(/ 1 8) + x2, (/ 3 16) + x1} status: [] precedence above: isPLNat n__isLNat and pair isNatural n__cons isLNat cons tt #take(x1,x2) weight: (/ 1 32) + x2 + x1 status: [x1,x2] precedence above: isPLNat(x1) weight: (/ 3 32) status: [] precedence above: n__isLNat and isNatural n__cons isLNat cons tt U91(x1,x2) weight: max{0, (/ 1 32) + x2} status: [x2] precedence above: #U101(x1,x2,x3) weight: (/ 1 32) + x3 + x2 + x1 status: [x1,x2,x3] precedence above: activate(x1) weight: x1 status: x1 n__isLNat(x1) weight: (/ 3 32) status: [] precedence above: isPLNat and isNatural n__cons isLNat cons tt #U82(x1,x2) weight: (/ 1 32) + x2 + x1 status: [x2,x1] precedence above: take(x1,x2) weight: (/ 155611 16) + x2 + x1 status: [x1] precedence above: U21 U101 fst n__take n__fst U71(x1,x2) weight: max{(/ 311205 32) + x2, (/ 311211 32) + x1} status: [x2] precedence above: n__pair isPLNat n__isLNat and pair isNatural n__cons isLNat cons tt #U81(x1,x2,x3,x4) weight: max{(/ 1 32) + x4, (/ 1 32) + x3, (/ 1 32) + x2, (/ 1 32) + x1} status: [x1,x2,x3,x4] precedence above: and(x1,x2) weight: max{0, x2} status: x2 U101(x1,x2,x3) weight: max{0, (/ 311215 32) + x3, (/ 311221 32) + x2} status: [x2,x3] precedence above: U21 fst n__fst pair(x1,x2) weight: max{(/ 1 8) + x2, (/ 3 16) + x1} status: [] precedence above: n__pair isPLNat n__isLNat and isNatural n__cons isLNat cons tt fst(x1) weight: x1 status: [] precedence above: U21 n__fst #activate(x1) weight: (/ 1 32) status: [] precedence above: natsFrom(x1) weight: (/ 1 8) + x1 status: [] precedence above: s isPLNat n__isLNat and n__natsFrom isNatural n__s n__cons isLNat cons tt U41 #head(x1) weight: x1 status: [] precedence above: splitAt(x1,x2) weight: max{(/ 311215 32) + x2, (/ 311221 32) + x1} status: [x2] precedence above: n__pair isPLNat n__isLNat U71 and pair isNatural n__splitAt n__cons isLNat cons U81 U82 tt #fst(x1) weight: x1 status: [] precedence above: n__nil() weight: (/ 155603 16) status: [] precedence above: nil tt n__natsFrom(x1) weight: (/ 1 8) + x1 status: [] precedence above: s isPLNat n__isLNat and natsFrom isNatural n__s n__cons isLNat cons tt U41 isNatural(x1) weight: (/ 3 32) status: [] precedence above: isPLNat n__isLNat and n__cons isLNat cons tt n__snd(x1) weight: (/ 1 8) + x1 status: [] precedence above: isPLNat n__isLNat and isNatural n__cons isLNat U61 cons snd tt n__s(x1) weight: x1 status: [x1] precedence above: s n__splitAt(x1,x2) weight: max{(/ 311215 32) + x2, (/ 311221 32) + x1} status: [x2] precedence above: n__pair isPLNat n__isLNat U71 and pair splitAt isNatural n__cons isLNat cons U81 U82 tt tail(x1) weight: (/ 1 32) + x1 status: [x1] precedence above: U91 n__tail 0() weight: 0 status: [] precedence above: n__0 n__take(x1,x2) weight: (/ 155611 16) + x2 + x1 status: [x1] precedence above: U21 take U101 fst n__fst #sel(x1,x2) weight: x2 status: [] precedence above: #isLNat(x1) weight: (/ 1 32) status: [] precedence above: sel(x1,x2) weight: (/ 311237 32) + x2 + x1 status: [x2] precedence above: n__sel U31 head n__head U51 #s(x1) weight: x1 status: [] precedence above: afterNth(x1,x2) weight: max{(/ 77807 8) + x2, 9726 + x1} status: [x1,x2] precedence above: U11 n__pair isPLNat n__isLNat U71 and pair splitAt isNatural n__snd n__splitAt n__cons isLNat n__afterNth U61 cons snd U81 U82 tt n__cons(x1,x2) weight: max{x2, x1} status: [x1] precedence above: isPLNat n__isLNat and isNatural isLNat cons tt #isPLNat(x1) weight: (/ 1 32) status: [] precedence above: nil() weight: (/ 155603 16) status: [] precedence above: n__nil tt isLNat(x1) weight: (/ 3 32) status: [] precedence above: isPLNat n__isLNat and isNatural n__cons cons tt n__sel(x1,x2) weight: (/ 311237 32) + x2 + x1 status: [x2] precedence above: sel U31 head n__head U51 #tail(x1) weight: x1 status: [] precedence above: #splitAt(x1,x2) weight: max{0, (/ 1 32) + x2} status: [x2] precedence above: #nil() weight: 0 status: [] precedence above: n__tail(x1) weight: (/ 1 32) + x1 status: [x1] precedence above: U91 tail #afterNth(x1,x2) weight: (/ 1 32) + x2 status: [x2] precedence above: n__0() weight: 0 status: [] precedence above: 0 n__afterNth(x1,x2) weight: max{(/ 77807 8) + x2, 9726 + x1} status: [x1,x2] precedence above: U11 n__pair isPLNat n__isLNat U71 and pair splitAt isNatural n__snd n__splitAt afterNth n__cons isLNat U61 cons snd U81 U82 tt U61(x1,x2) weight: max{0, (/ 3 32) + x2} status: [] precedence above: #U51(x1,x2,x3) weight: x1 status: [] precedence above: n__fst(x1) weight: x1 status: [] precedence above: U21 fst #U11(x1,x2,x3) weight: (/ 1 32) + x3 + x2 status: [x3,x2] precedence above: U31(x1,x2) weight: max{0, (/ 1 32) + x2} status: [] precedence above: head(x1) weight: (/ 1 16) + x1 status: [] precedence above: U31 n__head #snd(x1) weight: x1 status: [] precedence above: #U41(x1,x2) weight: (/ 1 32) + x2 + x1 status: [x2,x1] precedence above: cons(x1,x2) weight: max{x2, x1} status: [x1] precedence above: isPLNat n__isLNat and isNatural n__cons isLNat tt #natsFrom(x1) weight: (/ 1 32) status: [] precedence above: snd(x1) weight: (/ 1 8) + x1 status: [] precedence above: isPLNat n__isLNat and isNatural n__snd n__cons isLNat U61 cons tt #U21(x1,x2) weight: x2 status: [] precedence above: U81(x1,x2,x3,x4) weight: max{(/ 311215 32) + x4, (/ 311215 32) + x3, (/ 311221 32) + x2, (/ 311211 32) + x1} status: [] precedence above: n__pair isPLNat n__isLNat and pair isNatural n__cons isLNat cons U82 tt U82(x1,x2) weight: max{(/ 77803 8) + x2, x1} status: [] precedence above: n__pair isPLNat n__isLNat and pair isNatural n__cons isLNat cons tt tt() weight: (/ 1 16) status: [] precedence above: n__and(x1,x2) weight: max{0, x2} status: x2 #U71(x1,x2) weight: x1 status: [] precedence above: #isNatural(x1) weight: x1 status: [x1] precedence above: #pair(x1,x2) weight: (/ 1 32) + x2 status: [x2] precedence above: n__head(x1) weight: (/ 1 16) + x1 status: [] precedence above: U31 head U51(x1,x2,x3) weight: max{(/ 311231 32) + x3, (/ 311235 32) + x2, (/ 311233 32) + x1} status: [x3] precedence above: U31 head n__head U41(x1,x2) weight: max{0, (/ 1 8) + x2} status: [] precedence above: s isPLNat n__isLNat and isNatural n__s n__cons isLNat cons tt #U31(x1,x2) weight: x2 status: [] precedence above: #and(x1,x2) weight: max{0, (/ 1 32) + x1} status: [x1] precedence above: #U91(x1,x2) weight: (/ 1 32) + x2 + x1 status: [x1,x2] precedence above: #U61(x1,x2) weight: (/ 1 32) + x2 + x1 status: [x1,x2] precedence above: Usable rules: { 1..69 } Removed DPs: #93 Number of SCCs: 2, DPs: 6, edges: 7 SCC { #25 #95 #106 #115 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #0() weight: 0 U21(x1,x2) weight: x1 + x2 U11(x1,x2,x3) weight: x1 + x3 #cons(x1,x2) weight: 0 s(x1) weight: (/ 3 16) n__pair(x1,x2) weight: (/ 3 8) + x1 + x2 #take(x1,x2) weight: 0 isPLNat(x1) weight: (/ 1 8) + x1 U91(x1,x2) weight: (/ 1 16) #U101(x1,x2,x3) weight: 0 activate(x1) weight: (/ 1 8) n__isLNat(x1) weight: (/ 1 2) #U82(x1,x2) weight: 0 take(x1,x2) weight: (/ 3 16) + x1 U71(x1,x2) weight: (/ 1 4) #U81(x1,x2,x3,x4) weight: 0 and(x1,x2) weight: (/ 1 16) + x2 U101(x1,x2,x3) weight: (/ 1 4) pair(x1,x2) weight: (/ 5 16) + x1 fst(x1) weight: (/ 5 16) #activate(x1) weight: x1 natsFrom(x1) weight: (/ 3 16) #head(x1) weight: 0 splitAt(x1,x2) weight: (/ 3 16) #fst(x1) weight: 0 n__nil() weight: 0 n__natsFrom(x1) weight: (/ 1 4) isNatural(x1) weight: (/ 1 16) n__snd(x1) weight: (/ 1 4) n__s(x1) weight: (/ 1 4) + x1 n__splitAt(x1,x2) weight: (/ 1 4) + x1 tail(x1) weight: 0 0() weight: 0 n__take(x1,x2) weight: (/ 1 4) + x2 #sel(x1,x2) weight: 0 #isLNat(x1) weight: (/ 1 2) sel(x1,x2) weight: (/ 3 16) #s(x1) weight: 0 afterNth(x1,x2) weight: (/ 3 16) n__cons(x1,x2) weight: (/ 3 8) + x2 #isPLNat(x1) weight: 0 nil() weight: 0 isLNat(x1) weight: (/ 3 16) n__sel(x1,x2) weight: (/ 1 4) + x1 + x2 #tail(x1) weight: 0 #splitAt(x1,x2) weight: 0 #nil() weight: 0 n__tail(x1) weight: (/ 1 16) + x1 #afterNth(x1,x2) weight: 0 n__0() weight: 0 n__afterNth(x1,x2) weight: (/ 1 4) + x1 U61(x1,x2) weight: x1 + x2 #U51(x1,x2,x3) weight: 0 n__fst(x1) weight: (/ 3 8) + x1 #U11(x1,x2,x3) weight: 0 U31(x1,x2) weight: x1 head(x1) weight: (/ 3 16) + x1 #snd(x1) weight: 0 #U41(x1,x2) weight: 0 cons(x1,x2) weight: (/ 5 16) #natsFrom(x1) weight: 0 snd(x1) weight: (/ 3 16) #U21(x1,x2) weight: 0 U81(x1,x2,x3,x4) weight: (/ 1 4) + x3 U82(x1,x2) weight: (/ 3 16) + x2 tt() weight: 0 n__and(x1,x2) weight: (/ 1 8) + x2 #U71(x1,x2) weight: 0 #isNatural(x1) weight: 0 #pair(x1,x2) weight: 0 n__head(x1) weight: (/ 1 4) U51(x1,x2,x3) weight: x1 + x3 U41(x1,x2) weight: (/ 1 4) #U31(x1,x2) weight: 0 #and(x1,x2) weight: x2 #U91(x1,x2) weight: 0 #U61(x1,x2) weight: 0 Usable rules: { } Removed DPs: #95 Number of SCCs: 2, DPs: 5, edges: 5 SCC { #25 #106 #115 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... Order(PosReal,>,Sum-Sum; NegReal,≥,Sum)... Order(PosReal,>,MaxSum-Sum; NegReal,≥,Sum)... failed. Removing edges: failed. Finding a loop... failed. MAYBE