Input TRS: 1: a__U101(tt(),V1,V2) -> a__U102(a__isNatural(V1),V2) 2: a__U102(tt(),V2) -> a__U103(a__isLNat(V2)) 3: a__U103(tt()) -> tt() 4: a__U11(tt(),N,XS) -> a__snd(a__splitAt(mark(N),mark(XS))) 5: a__U111(tt(),V1) -> a__U112(a__isLNat(V1)) 6: a__U112(tt()) -> tt() 7: a__U121(tt(),V1) -> a__U122(a__isNatural(V1)) 8: a__U122(tt()) -> tt() 9: a__U131(tt(),V1,V2) -> a__U132(a__isNatural(V1),V2) 10: a__U132(tt(),V2) -> a__U133(a__isLNat(V2)) 11: a__U133(tt()) -> tt() 12: a__U141(tt(),V1,V2) -> a__U142(a__isLNat(V1),V2) 13: a__U142(tt(),V2) -> a__U143(a__isLNat(V2)) 14: a__U143(tt()) -> tt() 15: a__U151(tt(),V1,V2) -> a__U152(a__isNatural(V1),V2) 16: a__U152(tt(),V2) -> a__U153(a__isLNat(V2)) 17: a__U153(tt()) -> tt() 18: a__U161(tt(),N) -> cons(mark(N),natsFrom(s(N))) 19: a__U171(tt(),N,XS) -> a__head(a__afterNth(mark(N),mark(XS))) 20: a__U181(tt(),Y) -> mark(Y) 21: a__U191(tt(),XS) -> pair(nil(),mark(XS)) 22: a__U201(tt(),N,X,XS) -> a__U202(a__splitAt(mark(N),mark(XS)),X) 23: a__U202(pair(YS,ZS),X) -> pair(cons(mark(X),YS),mark(ZS)) 24: a__U21(tt(),X) -> mark(X) 25: a__U211(tt(),XS) -> mark(XS) 26: a__U221(tt(),N,XS) -> a__fst(a__splitAt(mark(N),mark(XS))) 27: a__U31(tt(),N) -> mark(N) 28: a__U41(tt(),V1,V2) -> a__U42(a__isNatural(V1),V2) 29: a__U42(tt(),V2) -> a__U43(a__isLNat(V2)) 30: a__U43(tt()) -> tt() 31: a__U51(tt(),V1,V2) -> a__U52(a__isNatural(V1),V2) 32: a__U52(tt(),V2) -> a__U53(a__isLNat(V2)) 33: a__U53(tt()) -> tt() 34: a__U61(tt(),V1) -> a__U62(a__isPLNat(V1)) 35: a__U62(tt()) -> tt() 36: a__U71(tt(),V1) -> a__U72(a__isNatural(V1)) 37: a__U72(tt()) -> tt() 38: a__U81(tt(),V1) -> a__U82(a__isPLNat(V1)) 39: a__U82(tt()) -> tt() 40: a__U91(tt(),V1) -> a__U92(a__isLNat(V1)) 41: a__U92(tt()) -> tt() 42: a__afterNth(N,XS) -> a__U11(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) 43: a__and(tt(),X) -> mark(X) 44: a__fst(pair(X,Y)) -> a__U21(a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))),X) 45: a__head(cons(N,XS)) -> a__U31(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N) 46: a__isLNat(nil()) -> tt() 47: a__isLNat(afterNth(V1,V2)) -> a__U41(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) 48: a__isLNat(cons(V1,V2)) -> a__U51(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) 49: a__isLNat(fst(V1)) -> a__U61(a__isPLNatKind(V1),V1) 50: a__isLNat(natsFrom(V1)) -> a__U71(a__isNaturalKind(V1),V1) 51: a__isLNat(snd(V1)) -> a__U81(a__isPLNatKind(V1),V1) 52: a__isLNat(tail(V1)) -> a__U91(a__isLNatKind(V1),V1) 53: a__isLNat(take(V1,V2)) -> a__U101(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) 54: a__isLNatKind(nil()) -> tt() 55: a__isLNatKind(afterNth(V1,V2)) -> a__and(a__isNaturalKind(V1),isLNatKind(V2)) 56: a__isLNatKind(cons(V1,V2)) -> a__and(a__isNaturalKind(V1),isLNatKind(V2)) 57: a__isLNatKind(fst(V1)) -> a__isPLNatKind(V1) 58: a__isLNatKind(natsFrom(V1)) -> a__isNaturalKind(V1) 59: a__isLNatKind(snd(V1)) -> a__isPLNatKind(V1) 60: a__isLNatKind(tail(V1)) -> a__isLNatKind(V1) 61: a__isLNatKind(take(V1,V2)) -> a__and(a__isNaturalKind(V1),isLNatKind(V2)) 62: a__isNatural(0()) -> tt() 63: a__isNatural(head(V1)) -> a__U111(a__isLNatKind(V1),V1) 64: a__isNatural(s(V1)) -> a__U121(a__isNaturalKind(V1),V1) 65: a__isNatural(sel(V1,V2)) -> a__U131(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) 66: a__isNaturalKind(0()) -> tt() 67: a__isNaturalKind(head(V1)) -> a__isLNatKind(V1) 68: a__isNaturalKind(s(V1)) -> a__isNaturalKind(V1) 69: a__isNaturalKind(sel(V1,V2)) -> a__and(a__isNaturalKind(V1),isLNatKind(V2)) 70: a__isPLNat(pair(V1,V2)) -> a__U141(a__and(a__isLNatKind(V1),isLNatKind(V2)),V1,V2) 71: a__isPLNat(splitAt(V1,V2)) -> a__U151(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) 72: a__isPLNatKind(pair(V1,V2)) -> a__and(a__isLNatKind(V1),isLNatKind(V2)) 73: a__isPLNatKind(splitAt(V1,V2)) -> a__and(a__isNaturalKind(V1),isLNatKind(V2)) 74: a__natsFrom(N) -> a__U161(a__and(a__isNatural(N),isNaturalKind(N)),N) 75: a__sel(N,XS) -> a__U171(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) 76: a__snd(pair(X,Y)) -> a__U181(a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))),Y) 77: a__splitAt(0(),XS) -> a__U191(a__and(a__isLNat(XS),isLNatKind(XS)),XS) 78: a__splitAt(s(N),cons(X,XS)) -> a__U201(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(and(isNatural(X),isNaturalKind(X)),and(isLNat(XS),isLNatKind(XS)))),N,X,XS) 79: a__tail(cons(N,XS)) -> a__U211(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),XS) 80: a__take(N,XS) -> a__U221(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) 81: mark(U101(X1,X2,X3)) -> a__U101(mark(X1),X2,X3) 82: mark(U102(X1,X2)) -> a__U102(mark(X1),X2) 83: mark(isNatural(X)) -> a__isNatural(X) 84: mark(U103(X)) -> a__U103(mark(X)) 85: mark(isLNat(X)) -> a__isLNat(X) 86: mark(U11(X1,X2,X3)) -> a__U11(mark(X1),X2,X3) 87: mark(snd(X)) -> a__snd(mark(X)) 88: mark(splitAt(X1,X2)) -> a__splitAt(mark(X1),mark(X2)) 89: mark(U111(X1,X2)) -> a__U111(mark(X1),X2) 90: mark(U112(X)) -> a__U112(mark(X)) 91: mark(U121(X1,X2)) -> a__U121(mark(X1),X2) 92: mark(U122(X)) -> a__U122(mark(X)) 93: mark(U131(X1,X2,X3)) -> a__U131(mark(X1),X2,X3) 94: mark(U132(X1,X2)) -> a__U132(mark(X1),X2) 95: mark(U133(X)) -> a__U133(mark(X)) 96: mark(U141(X1,X2,X3)) -> a__U141(mark(X1),X2,X3) 97: mark(U142(X1,X2)) -> a__U142(mark(X1),X2) 98: mark(U143(X)) -> a__U143(mark(X)) 99: mark(U151(X1,X2,X3)) -> a__U151(mark(X1),X2,X3) 100: mark(U152(X1,X2)) -> a__U152(mark(X1),X2) 101: mark(U153(X)) -> a__U153(mark(X)) 102: mark(U161(X1,X2)) -> a__U161(mark(X1),X2) 103: mark(natsFrom(X)) -> a__natsFrom(mark(X)) 104: mark(U171(X1,X2,X3)) -> a__U171(mark(X1),X2,X3) 105: mark(head(X)) -> a__head(mark(X)) 106: mark(afterNth(X1,X2)) -> a__afterNth(mark(X1),mark(X2)) 107: mark(U181(X1,X2)) -> a__U181(mark(X1),X2) 108: mark(U191(X1,X2)) -> a__U191(mark(X1),X2) 109: mark(U201(X1,X2,X3,X4)) -> a__U201(mark(X1),X2,X3,X4) 110: mark(U202(X1,X2)) -> a__U202(mark(X1),X2) 111: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) 112: mark(U211(X1,X2)) -> a__U211(mark(X1),X2) 113: mark(U221(X1,X2,X3)) -> a__U221(mark(X1),X2,X3) 114: mark(fst(X)) -> a__fst(mark(X)) 115: mark(U31(X1,X2)) -> a__U31(mark(X1),X2) 116: mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) 117: mark(U42(X1,X2)) -> a__U42(mark(X1),X2) 118: mark(U43(X)) -> a__U43(mark(X)) 119: mark(U51(X1,X2,X3)) -> a__U51(mark(X1),X2,X3) 120: mark(U52(X1,X2)) -> a__U52(mark(X1),X2) 121: mark(U53(X)) -> a__U53(mark(X)) 122: mark(U61(X1,X2)) -> a__U61(mark(X1),X2) 123: mark(U62(X)) -> a__U62(mark(X)) 124: mark(isPLNat(X)) -> a__isPLNat(X) 125: mark(U71(X1,X2)) -> a__U71(mark(X1),X2) 126: mark(U72(X)) -> a__U72(mark(X)) 127: mark(U81(X1,X2)) -> a__U81(mark(X1),X2) 128: mark(U82(X)) -> a__U82(mark(X)) 129: mark(U91(X1,X2)) -> a__U91(mark(X1),X2) 130: mark(U92(X)) -> a__U92(mark(X)) 131: mark(and(X1,X2)) -> a__and(mark(X1),X2) 132: mark(isNaturalKind(X)) -> a__isNaturalKind(X) 133: mark(isLNatKind(X)) -> a__isLNatKind(X) 134: mark(isPLNatKind(X)) -> a__isPLNatKind(X) 135: mark(tail(X)) -> a__tail(mark(X)) 136: mark(take(X1,X2)) -> a__take(mark(X1),mark(X2)) 137: mark(sel(X1,X2)) -> a__sel(mark(X1),mark(X2)) 138: mark(tt()) -> tt() 139: mark(cons(X1,X2)) -> cons(mark(X1),X2) 140: mark(s(X)) -> s(mark(X)) 141: mark(pair(X1,X2)) -> pair(mark(X1),mark(X2)) 142: mark(nil()) -> nil() 143: mark(0()) -> 0() 144: a__U101(X1,X2,X3) -> U101(X1,X2,X3) 145: a__U102(X1,X2) -> U102(X1,X2) 146: a__isNatural(X) -> isNatural(X) 147: a__U103(X) -> U103(X) 148: a__isLNat(X) -> isLNat(X) 149: a__U11(X1,X2,X3) -> U11(X1,X2,X3) 150: a__snd(X) -> snd(X) 151: a__splitAt(X1,X2) -> splitAt(X1,X2) 152: a__U111(X1,X2) -> U111(X1,X2) 153: a__U112(X) -> U112(X) 154: a__U121(X1,X2) -> U121(X1,X2) 155: a__U122(X) -> U122(X) 156: a__U131(X1,X2,X3) -> U131(X1,X2,X3) 157: a__U132(X1,X2) -> U132(X1,X2) 158: a__U133(X) -> U133(X) 159: a__U141(X1,X2,X3) -> U141(X1,X2,X3) 160: a__U142(X1,X2) -> U142(X1,X2) 161: a__U143(X) -> U143(X) 162: a__U151(X1,X2,X3) -> U151(X1,X2,X3) 163: a__U152(X1,X2) -> U152(X1,X2) 164: a__U153(X) -> U153(X) 165: a__U161(X1,X2) -> U161(X1,X2) 166: a__natsFrom(X) -> natsFrom(X) 167: a__U171(X1,X2,X3) -> U171(X1,X2,X3) 168: a__head(X) -> head(X) 169: a__afterNth(X1,X2) -> afterNth(X1,X2) 170: a__U181(X1,X2) -> U181(X1,X2) 171: a__U191(X1,X2) -> U191(X1,X2) 172: a__U201(X1,X2,X3,X4) -> U201(X1,X2,X3,X4) 173: a__U202(X1,X2) -> U202(X1,X2) 174: a__U21(X1,X2) -> U21(X1,X2) 175: a__U211(X1,X2) -> U211(X1,X2) 176: a__U221(X1,X2,X3) -> U221(X1,X2,X3) 177: a__fst(X) -> fst(X) 178: a__U31(X1,X2) -> U31(X1,X2) 179: a__U41(X1,X2,X3) -> U41(X1,X2,X3) 180: a__U42(X1,X2) -> U42(X1,X2) 181: a__U43(X) -> U43(X) 182: a__U51(X1,X2,X3) -> U51(X1,X2,X3) 183: a__U52(X1,X2) -> U52(X1,X2) 184: a__U53(X) -> U53(X) 185: a__U61(X1,X2) -> U61(X1,X2) 186: a__U62(X) -> U62(X) 187: a__isPLNat(X) -> isPLNat(X) 188: a__U71(X1,X2) -> U71(X1,X2) 189: a__U72(X) -> U72(X) 190: a__U81(X1,X2) -> U81(X1,X2) 191: a__U82(X) -> U82(X) 192: a__U91(X1,X2) -> U91(X1,X2) 193: a__U92(X) -> U92(X) 194: a__and(X1,X2) -> and(X1,X2) 195: a__isNaturalKind(X) -> isNaturalKind(X) 196: a__isLNatKind(X) -> isLNatKind(X) 197: a__isPLNatKind(X) -> isPLNatKind(X) 198: a__tail(X) -> tail(X) 199: a__take(X1,X2) -> take(X1,X2) 200: a__sel(X1,X2) -> sel(X1,X2) Number of strict rules: 200 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #a__U102(tt(),V2) -> #a__U103(a__isLNat(V2)) #2: #a__U102(tt(),V2) -> #a__isLNat(V2) #3: #mark(U11(X1,X2,X3)) -> #a__U11(mark(X1),X2,X3) #4: #mark(U11(X1,X2,X3)) -> #mark(X1) #5: #a__and(tt(),X) -> #mark(X) #6: #a__U42(tt(),V2) -> #a__U43(a__isLNat(V2)) #7: #a__U42(tt(),V2) -> #a__isLNat(V2) #8: #mark(isNatural(X)) -> #a__isNatural(X) #9: #a__afterNth(N,XS) -> #a__U11(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) #10: #a__afterNth(N,XS) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))) #11: #a__afterNth(N,XS) -> #a__and(a__isNatural(N),isNaturalKind(N)) #12: #a__afterNth(N,XS) -> #a__isNatural(N) #13: #mark(U31(X1,X2)) -> #a__U31(mark(X1),X2) #14: #mark(U31(X1,X2)) -> #mark(X1) #15: #mark(U133(X)) -> #a__U133(mark(X)) #16: #mark(U133(X)) -> #mark(X) #17: #mark(fst(X)) -> #a__fst(mark(X)) #18: #mark(fst(X)) -> #mark(X) #19: #mark(U151(X1,X2,X3)) -> #a__U151(mark(X1),X2,X3) #20: #mark(U151(X1,X2,X3)) -> #mark(X1) #21: #mark(U142(X1,X2)) -> #a__U142(mark(X1),X2) #22: #mark(U142(X1,X2)) -> #mark(X1) #23: #mark(U121(X1,X2)) -> #a__U121(mark(X1),X2) #24: #mark(U121(X1,X2)) -> #mark(X1) #25: #a__isPLNatKind(splitAt(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #26: #a__isPLNatKind(splitAt(V1,V2)) -> #a__isNaturalKind(V1) #27: #a__isLNat(afterNth(V1,V2)) -> #a__U41(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) #28: #a__isLNat(afterNth(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #29: #a__isLNat(afterNth(V1,V2)) -> #a__isNaturalKind(V1) #30: #a__isLNat(take(V1,V2)) -> #a__U101(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) #31: #a__isLNat(take(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #32: #a__isLNat(take(V1,V2)) -> #a__isNaturalKind(V1) #33: #a__isPLNat(splitAt(V1,V2)) -> #a__U151(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) #34: #a__isPLNat(splitAt(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #35: #a__isPLNat(splitAt(V1,V2)) -> #a__isNaturalKind(V1) #36: #mark(cons(X1,X2)) -> #mark(X1) #37: #a__isLNat(cons(V1,V2)) -> #a__U51(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) #38: #a__isLNat(cons(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #39: #a__isLNat(cons(V1,V2)) -> #a__isNaturalKind(V1) #40: #mark(U62(X)) -> #a__U62(mark(X)) #41: #mark(U62(X)) -> #mark(X) #42: #a__sel(N,XS) -> #a__U171(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) #43: #a__sel(N,XS) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))) #44: #a__sel(N,XS) -> #a__and(a__isNatural(N),isNaturalKind(N)) #45: #a__sel(N,XS) -> #a__isNatural(N) #46: #mark(U211(X1,X2)) -> #a__U211(mark(X1),X2) #47: #mark(U211(X1,X2)) -> #mark(X1) #48: #a__natsFrom(N) -> #a__U161(a__and(a__isNatural(N),isNaturalKind(N)),N) #49: #a__natsFrom(N) -> #a__and(a__isNatural(N),isNaturalKind(N)) #50: #a__natsFrom(N) -> #a__isNatural(N) #51: #a__isLNatKind(natsFrom(V1)) -> #a__isNaturalKind(V1) #52: #mark(U221(X1,X2,X3)) -> #a__U221(mark(X1),X2,X3) #53: #mark(U221(X1,X2,X3)) -> #mark(X1) #54: #a__isLNatKind(take(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #55: #a__isLNatKind(take(V1,V2)) -> #a__isNaturalKind(V1) #56: #a__U81(tt(),V1) -> #a__U82(a__isPLNat(V1)) #57: #a__U81(tt(),V1) -> #a__isPLNat(V1) #58: #mark(U41(X1,X2,X3)) -> #a__U41(mark(X1),X2,X3) #59: #mark(U41(X1,X2,X3)) -> #mark(X1) #60: #a__isLNatKind(snd(V1)) -> #a__isPLNatKind(V1) #61: #mark(U202(X1,X2)) -> #a__U202(mark(X1),X2) #62: #mark(U202(X1,X2)) -> #mark(X1) #63: #mark(isNaturalKind(X)) -> #a__isNaturalKind(X) #64: #a__isLNatKind(afterNth(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #65: #a__isLNatKind(afterNth(V1,V2)) -> #a__isNaturalKind(V1) #66: #a__isNaturalKind(head(V1)) -> #a__isLNatKind(V1) #67: #a__U91(tt(),V1) -> #a__U92(a__isLNat(V1)) #68: #a__U91(tt(),V1) -> #a__isLNat(V1) #69: #mark(U112(X)) -> #a__U112(mark(X)) #70: #mark(U112(X)) -> #mark(X) #71: #mark(U181(X1,X2)) -> #a__U181(mark(X1),X2) #72: #mark(U181(X1,X2)) -> #mark(X1) #73: #a__isLNat(snd(V1)) -> #a__U81(a__isPLNatKind(V1),V1) #74: #a__isLNat(snd(V1)) -> #a__isPLNatKind(V1) #75: #a__U142(tt(),V2) -> #a__U143(a__isLNat(V2)) #76: #a__U142(tt(),V2) -> #a__isLNat(V2) #77: #a__U131(tt(),V1,V2) -> #a__U132(a__isNatural(V1),V2) #78: #a__U131(tt(),V1,V2) -> #a__isNatural(V1) #79: #mark(U143(X)) -> #a__U143(mark(X)) #80: #mark(U143(X)) -> #mark(X) #81: #a__isLNatKind(fst(V1)) -> #a__isPLNatKind(V1) #82: #a__snd(pair(X,Y)) -> #a__U181(a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))),Y) #83: #a__snd(pair(X,Y)) -> #a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))) #84: #a__snd(pair(X,Y)) -> #a__and(a__isLNat(X),isLNatKind(X)) #85: #a__snd(pair(X,Y)) -> #a__isLNat(X) #86: #mark(U201(X1,X2,X3,X4)) -> #a__U201(mark(X1),X2,X3,X4) #87: #mark(U201(X1,X2,X3,X4)) -> #mark(X1) #88: #mark(U132(X1,X2)) -> #a__U132(mark(X1),X2) #89: #mark(U132(X1,X2)) -> #mark(X1) #90: #a__U21(tt(),X) -> #mark(X) #91: #mark(isPLNatKind(X)) -> #a__isPLNatKind(X) #92: #a__isPLNat(pair(V1,V2)) -> #a__U141(a__and(a__isLNatKind(V1),isLNatKind(V2)),V1,V2) #93: #a__isPLNat(pair(V1,V2)) -> #a__and(a__isLNatKind(V1),isLNatKind(V2)) #94: #a__isPLNat(pair(V1,V2)) -> #a__isLNatKind(V1) #95: #a__U202(pair(YS,ZS),X) -> #mark(X) #96: #a__U202(pair(YS,ZS),X) -> #mark(ZS) #97: #mark(U82(X)) -> #a__U82(mark(X)) #98: #mark(U82(X)) -> #mark(X) #99: #mark(U101(X1,X2,X3)) -> #a__U101(mark(X1),X2,X3) #100: #mark(U101(X1,X2,X3)) -> #mark(X1) #101: #mark(U43(X)) -> #a__U43(mark(X)) #102: #mark(U43(X)) -> #mark(X) #103: #a__splitAt(s(N),cons(X,XS)) -> #a__U201(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(and(isNatural(X),isNaturalKind(X)),and(isLNat(XS),isLNatKind(XS)))),N,X,XS) #104: #a__splitAt(s(N),cons(X,XS)) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(and(isNatural(X),isNaturalKind(X)),and(isLNat(XS),isLNatKind(XS)))) #105: #a__splitAt(s(N),cons(X,XS)) -> #a__and(a__isNatural(N),isNaturalKind(N)) #106: #a__splitAt(s(N),cons(X,XS)) -> #a__isNatural(N) #107: #a__head(cons(N,XS)) -> #a__U31(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N) #108: #a__head(cons(N,XS)) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))) #109: #a__head(cons(N,XS)) -> #a__and(a__isNatural(N),isNaturalKind(N)) #110: #a__head(cons(N,XS)) -> #a__isNatural(N) #111: #mark(U141(X1,X2,X3)) -> #a__U141(mark(X1),X2,X3) #112: #mark(U141(X1,X2,X3)) -> #mark(X1) #113: #a__isNaturalKind(sel(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #114: #a__isNaturalKind(sel(V1,V2)) -> #a__isNaturalKind(V1) #115: #mark(U153(X)) -> #a__U153(mark(X)) #116: #mark(U153(X)) -> #mark(X) #117: #a__U141(tt(),V1,V2) -> #a__U142(a__isLNat(V1),V2) #118: #a__U141(tt(),V1,V2) -> #a__isLNat(V1) #119: #a__U51(tt(),V1,V2) -> #a__U52(a__isNatural(V1),V2) #120: #a__U51(tt(),V1,V2) -> #a__isNatural(V1) #121: #a__tail(cons(N,XS)) -> #a__U211(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),XS) #122: #a__tail(cons(N,XS)) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))) #123: #a__tail(cons(N,XS)) -> #a__and(a__isNatural(N),isNaturalKind(N)) #124: #a__tail(cons(N,XS)) -> #a__isNatural(N) #125: #a__isLNatKind(cons(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #126: #a__isLNatKind(cons(V1,V2)) -> #a__isNaturalKind(V1) #127: #mark(U111(X1,X2)) -> #a__U111(mark(X1),X2) #128: #mark(U111(X1,X2)) -> #mark(X1) #129: #mark(isLNatKind(X)) -> #a__isLNatKind(X) #130: #mark(U102(X1,X2)) -> #a__U102(mark(X1),X2) #131: #mark(U102(X1,X2)) -> #mark(X1) #132: #mark(U21(X1,X2)) -> #a__U21(mark(X1),X2) #133: #mark(U21(X1,X2)) -> #mark(X1) #134: #mark(afterNth(X1,X2)) -> #a__afterNth(mark(X1),mark(X2)) #135: #mark(afterNth(X1,X2)) -> #mark(X1) #136: #mark(afterNth(X1,X2)) -> #mark(X2) #137: #a__isLNat(tail(V1)) -> #a__U91(a__isLNatKind(V1),V1) #138: #a__isLNat(tail(V1)) -> #a__isLNatKind(V1) #139: #a__isLNat(fst(V1)) -> #a__U61(a__isPLNatKind(V1),V1) #140: #a__isLNat(fst(V1)) -> #a__isPLNatKind(V1) #141: #a__U211(tt(),XS) -> #mark(XS) #142: #mark(U92(X)) -> #a__U92(mark(X)) #143: #mark(U92(X)) -> #mark(X) #144: #mark(U191(X1,X2)) -> #a__U191(mark(X1),X2) #145: #mark(U191(X1,X2)) -> #mark(X1) #146: #mark(U91(X1,X2)) -> #a__U91(mark(X1),X2) #147: #mark(U91(X1,X2)) -> #mark(X1) #148: #a__U181(tt(),Y) -> #mark(Y) #149: #mark(U72(X)) -> #a__U72(mark(X)) #150: #mark(U72(X)) -> #mark(X) #151: #mark(splitAt(X1,X2)) -> #a__splitAt(mark(X1),mark(X2)) #152: #mark(splitAt(X1,X2)) -> #mark(X1) #153: #mark(splitAt(X1,X2)) -> #mark(X2) #154: #a__U121(tt(),V1) -> #a__U122(a__isNatural(V1)) #155: #a__U121(tt(),V1) -> #a__isNatural(V1) #156: #mark(take(X1,X2)) -> #a__take(mark(X1),mark(X2)) #157: #mark(take(X1,X2)) -> #mark(X1) #158: #mark(take(X1,X2)) -> #mark(X2) #159: #a__U132(tt(),V2) -> #a__U133(a__isLNat(V2)) #160: #a__U132(tt(),V2) -> #a__isLNat(V2) #161: #mark(U122(X)) -> #a__U122(mark(X)) #162: #mark(U122(X)) -> #mark(X) #163: #mark(U51(X1,X2,X3)) -> #a__U51(mark(X1),X2,X3) #164: #mark(U51(X1,X2,X3)) -> #mark(X1) #165: #mark(U131(X1,X2,X3)) -> #a__U131(mark(X1),X2,X3) #166: #mark(U131(X1,X2,X3)) -> #mark(X1) #167: #a__isNatural(s(V1)) -> #a__U121(a__isNaturalKind(V1),V1) #168: #a__isNatural(s(V1)) -> #a__isNaturalKind(V1) #169: #a__isPLNatKind(pair(V1,V2)) -> #a__and(a__isLNatKind(V1),isLNatKind(V2)) #170: #a__isPLNatKind(pair(V1,V2)) -> #a__isLNatKind(V1) #171: #mark(U52(X1,X2)) -> #a__U52(mark(X1),X2) #172: #mark(U52(X1,X2)) -> #mark(X1) #173: #a__U111(tt(),V1) -> #a__U112(a__isLNat(V1)) #174: #a__U111(tt(),V1) -> #a__isLNat(V1) #175: #a__fst(pair(X,Y)) -> #a__U21(a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))),X) #176: #a__fst(pair(X,Y)) -> #a__and(a__and(a__isLNat(X),isLNatKind(X)),and(isLNat(Y),isLNatKind(Y))) #177: #a__fst(pair(X,Y)) -> #a__and(a__isLNat(X),isLNatKind(X)) #178: #a__fst(pair(X,Y)) -> #a__isLNat(X) #179: #a__isNatural(sel(V1,V2)) -> #a__U131(a__and(a__isNaturalKind(V1),isLNatKind(V2)),V1,V2) #180: #a__isNatural(sel(V1,V2)) -> #a__and(a__isNaturalKind(V1),isLNatKind(V2)) #181: #a__isNatural(sel(V1,V2)) -> #a__isNaturalKind(V1) #182: #a__U41(tt(),V1,V2) -> #a__U42(a__isNatural(V1),V2) #183: #a__U41(tt(),V1,V2) -> #a__isNatural(V1) #184: #a__U201(tt(),N,X,XS) -> #a__U202(a__splitAt(mark(N),mark(XS)),X) #185: #a__U201(tt(),N,X,XS) -> #a__splitAt(mark(N),mark(XS)) #186: #a__U201(tt(),N,X,XS) -> #mark(N) #187: #a__U201(tt(),N,X,XS) -> #mark(XS) #188: #mark(U81(X1,X2)) -> #a__U81(mark(X1),X2) #189: #mark(U81(X1,X2)) -> #mark(X1) #190: #a__U61(tt(),V1) -> #a__U62(a__isPLNat(V1)) #191: #a__U61(tt(),V1) -> #a__isPLNat(V1) #192: #mark(U103(X)) -> #a__U103(mark(X)) #193: #mark(U103(X)) -> #mark(X) #194: #mark(snd(X)) -> #a__snd(mark(X)) #195: #mark(snd(X)) -> #mark(X) #196: #a__U31(tt(),N) -> #mark(N) #197: #mark(sel(X1,X2)) -> #a__sel(mark(X1),mark(X2)) #198: #mark(sel(X1,X2)) -> #mark(X1) #199: #mark(sel(X1,X2)) -> #mark(X2) #200: #a__isLNatKind(tail(V1)) -> #a__isLNatKind(V1) #201: #mark(U42(X1,X2)) -> #a__U42(mark(X1),X2) #202: #mark(U42(X1,X2)) -> #mark(X1) #203: #a__U52(tt(),V2) -> #a__U53(a__isLNat(V2)) #204: #a__U52(tt(),V2) -> #a__isLNat(V2) #205: #a__U171(tt(),N,XS) -> #a__head(a__afterNth(mark(N),mark(XS))) #206: #a__U171(tt(),N,XS) -> #a__afterNth(mark(N),mark(XS)) #207: #a__U171(tt(),N,XS) -> #mark(N) #208: #a__U171(tt(),N,XS) -> #mark(XS) #209: #mark(U71(X1,X2)) -> #a__U71(mark(X1),X2) #210: #mark(U71(X1,X2)) -> #mark(X1) #211: #a__isNatural(head(V1)) -> #a__U111(a__isLNatKind(V1),V1) #212: #a__isNatural(head(V1)) -> #a__isLNatKind(V1) #213: #mark(tail(X)) -> #a__tail(mark(X)) #214: #mark(tail(X)) -> #mark(X) #215: #mark(head(X)) -> #a__head(mark(X)) #216: #mark(head(X)) -> #mark(X) #217: #a__U221(tt(),N,XS) -> #a__fst(a__splitAt(mark(N),mark(XS))) #218: #a__U221(tt(),N,XS) -> #a__splitAt(mark(N),mark(XS)) #219: #a__U221(tt(),N,XS) -> #mark(N) #220: #a__U221(tt(),N,XS) -> #mark(XS) #221: #mark(U152(X1,X2)) -> #a__U152(mark(X1),X2) #222: #mark(U152(X1,X2)) -> #mark(X1) #223: #mark(isLNat(X)) -> #a__isLNat(X) #224: #mark(U61(X1,X2)) -> #a__U61(mark(X1),X2) #225: #mark(U61(X1,X2)) -> #mark(X1) #226: #a__isNaturalKind(s(V1)) -> #a__isNaturalKind(V1) #227: #mark(and(X1,X2)) -> #a__and(mark(X1),X2) #228: #mark(and(X1,X2)) -> #mark(X1) #229: #a__U71(tt(),V1) -> #a__U72(a__isNatural(V1)) #230: #a__U71(tt(),V1) -> #a__isNatural(V1) #231: #a__U191(tt(),XS) -> #mark(XS) #232: #a__U152(tt(),V2) -> #a__U153(a__isLNat(V2)) #233: #a__U152(tt(),V2) -> #a__isLNat(V2) #234: #a__splitAt(0(),XS) -> #a__U191(a__and(a__isLNat(XS),isLNatKind(XS)),XS) #235: #a__splitAt(0(),XS) -> #a__and(a__isLNat(XS),isLNatKind(XS)) #236: #a__splitAt(0(),XS) -> #a__isLNat(XS) #237: #a__U101(tt(),V1,V2) -> #a__U102(a__isNatural(V1),V2) #238: #a__U101(tt(),V1,V2) -> #a__isNatural(V1) #239: #mark(s(X)) -> #mark(X) #240: #mark(isPLNat(X)) -> #a__isPLNat(X) #241: #mark(pair(X1,X2)) -> #mark(X1) #242: #mark(pair(X1,X2)) -> #mark(X2) #243: #mark(U53(X)) -> #a__U53(mark(X)) #244: #mark(U53(X)) -> #mark(X) #245: #a__U151(tt(),V1,V2) -> #a__U152(a__isNatural(V1),V2) #246: #a__U151(tt(),V1,V2) -> #a__isNatural(V1) #247: #mark(U161(X1,X2)) -> #a__U161(mark(X1),X2) #248: #mark(U161(X1,X2)) -> #mark(X1) #249: #mark(natsFrom(X)) -> #a__natsFrom(mark(X)) #250: #mark(natsFrom(X)) -> #mark(X) #251: #a__U11(tt(),N,XS) -> #a__snd(a__splitAt(mark(N),mark(XS))) #252: #a__U11(tt(),N,XS) -> #a__splitAt(mark(N),mark(XS)) #253: #a__U11(tt(),N,XS) -> #mark(N) #254: #a__U11(tt(),N,XS) -> #mark(XS) #255: #mark(U171(X1,X2,X3)) -> #a__U171(mark(X1),X2,X3) #256: #mark(U171(X1,X2,X3)) -> #mark(X1) #257: #a__take(N,XS) -> #a__U221(a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))),N,XS) #258: #a__take(N,XS) -> #a__and(a__and(a__isNatural(N),isNaturalKind(N)),and(isLNat(XS),isLNatKind(XS))) #259: #a__take(N,XS) -> #a__and(a__isNatural(N),isNaturalKind(N)) #260: #a__take(N,XS) -> #a__isNatural(N) #261: #a__isLNat(natsFrom(V1)) -> #a__U71(a__isNaturalKind(V1),V1) #262: #a__isLNat(natsFrom(V1)) -> #a__isNaturalKind(V1) #263: #a__U161(tt(),N) -> #mark(N) Number of SCCs: 1, DPs: 239, edges: 8600 SCC { #2..5 #7..14 #16..39 #41..55 #57..66 #68 #70..74 #76..78 #80..96 #98..100 #102..114 #116..141 #143..148 #150..153 #155..158 #160 #162..172 #174..189 #191 #193..202 #204..228 #230 #231 #233..242 #244..263 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__U143(x1) weight: x1 #a__isNaturalKind(x1) weight: x1 a__U151(x1,x2,x3) weight: max{x3, x2, x1} #a__U131(x1,x2,x3) weight: max{0, x3, (/ 1 8) + x2} U21(x1,x2) weight: max{x2, x1} a__U102(x1,x2) weight: max{x2, x1} #a__U143(x1) weight: 0 #a__U82(x1) weight: 0 a__U152(x1,x2) weight: max{x2, x1} #a__U72(x1) weight: 0 U161(x1,x2) weight: max{(/ 102125 4) + x2, (/ 102125 4) + x1} #a__U71(x1,x2) weight: max{0, x2} U11(x1,x2,x3) weight: max{x3, x2, x1} a__U171(x1,x2,x3) weight: max{x3, x2, x1} #a__U92(x1) weight: 0 a__U191(x1,x2) weight: max{x2, x1} a__U153(x1) weight: x1 #a__U112(x1) weight: 0 s(x1) weight: x1 #a__U133(x1) weight: 0 #a__U31(x1,x2) weight: max{0, x2} a__U132(x1,x2) weight: max{x2, (/ 1 8) + x1} U143(x1) weight: x1 #a__head(x1) weight: x1 #a__natsFrom(x1) weight: (/ 102125 4) + x1 isPLNatKind(x1) weight: x1 U142(x1,x2) weight: max{x2, x1} #a__U142(x1,x2) weight: max{x2, x1} #a__U191(x1,x2) weight: max{0, x2} isPLNat(x1) weight: x1 #a__snd(x1) weight: x1 a__afterNth(x1,x2) weight: max{x2, x1} U42(x1,x2) weight: max{x2, x1} U91(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} U221(x1,x2,x3) weight: max{x3, (/ 1 8) + x2, x1} a__U82(x1) weight: x1 #a__U152(x1,x2) weight: max{0, x2} #a__U153(x1) weight: 0 take(x1,x2) weight: max{x2, (/ 1 4) + x1} U71(x1,x2) weight: max{(/ 1 8) + x2, (/ 1 8) + x1} a__U62(x1) weight: x1 and(x1,x2) weight: max{x2, x1} U131(x1,x2,x3) weight: max{x3, (/ 1 8) + x2, x1} a__U221(x1,x2,x3) weight: max{x3, (/ 1 8) + x2, x1} U101(x1,x2,x3) weight: max{x3, (/ 1 4) + x2, x1} #a__U43(x1) weight: 0 pair(x1,x2) weight: max{x2, x1} fst(x1) weight: x1 U111(x1,x2) weight: max{x2, x1} U132(x1,x2) weight: max{x2, (/ 1 8) + x1} U43(x1) weight: x1 a__U121(x1,x2) weight: max{x2, x1} U152(x1,x2) weight: max{x2, x1} U103(x1) weight: x1 a__U111(x1,x2) weight: max{x2, x1} natsFrom(x1) weight: (/ 102125 4) + x1 #a__U103(x1) weight: 0 a__snd(x1) weight: x1 #a__U181(x1,x2) weight: max{x2, x1} #a__U51(x1,x2,x3) weight: max{0, x3, x2} isNaturalKind(x1) weight: x1 splitAt(x1,x2) weight: max{x2, x1} U72(x1) weight: x1 #a__U11(x1,x2,x3) weight: max{0, x3, x2} a__U31(x1,x2) weight: max{x2, x1} a__U51(x1,x2,x3) weight: max{x3, x2, x1} a__U81(x1,x2) weight: max{x2, x1} #a__U53(x1) weight: 0 #a__take(x1,x2) weight: max{x2, (/ 1 4) + x1} a__U43(x1) weight: x1 #a__isLNatKind(x1) weight: x1 #a__U62(x1) weight: 0 isNatural(x1) weight: x1 #a__U42(x1,x2) weight: max{0, x2} a__U41(x1,x2,x3) weight: max{x3, x2, x1} #a__U122(x1) weight: 0 U201(x1,x2,x3,x4) weight: max{x4, x3, x2, x1} a__U122(x1) weight: x1 #a__U21(x1,x2) weight: max{0, x2} #a__U81(x1,x2) weight: max{x2, x1} a__U161(x1,x2) weight: max{(/ 102125 4) + x2, (/ 102125 4) + x1} #a__U61(x1,x2) weight: max{0, x2} U141(x1,x2,x3) weight: max{x3, x2, x1} a__fst(x1) weight: x1 tail(x1) weight: (/ 1 2) + x1 a__natsFrom(x1) weight: (/ 102125 4) + x1 #mark(x1) weight: x1 0() weight: (/ 1 8) #a__and(x1,x2) weight: max{0, x2} #a__U211(x1,x2) weight: max{0, (/ 1 4) + x2} a__isLNat(x1) weight: x1 U191(x1,x2) weight: max{x2, x1} a__U21(x1,x2) weight: max{x2, x1} U153(x1) weight: x1 U171(x1,x2,x3) weight: max{x3, x2, x1} a__U91(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} sel(x1,x2) weight: max{x2, (/ 1 4) + x1} U202(x1,x2) weight: max{x2, x1} afterNth(x1,x2) weight: max{x2, x1} #a__U151(x1,x2,x3) weight: max{0, x3, x2} #a__U111(x1,x2) weight: max{0, x2} #a__U161(x1,x2) weight: max{0, (/ 1 8) + x2} #a__U141(x1,x2,x3) weight: max{0, x3, x2} nil() weight: (/ 1 8) a__splitAt(x1,x2) weight: max{x2, x1} isLNat(x1) weight: x1 a__U142(x1,x2) weight: max{x2, x1} U62(x1) weight: x1 #a__U52(x1,x2) weight: max{x2, x1} a__U211(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} #a__U102(x1,x2) weight: max{0, x2} #a__sel(x1,x2) weight: max{x2, x1} mark(x1) weight: x1 U151(x1,x2,x3) weight: max{x3, x2, x1} #a__isLNat(x1) weight: x1 U133(x1) weight: x1 a__U72(x1) weight: x1 #a__U101(x1,x2,x3) weight: max{0, x3, (/ 1 4) + x2} a__U11(x1,x2,x3) weight: max{x3, x2, x1} a__U53(x1) weight: x1 a__U141(x1,x2,x3) weight: max{x3, x2, x1} a__sel(x1,x2) weight: max{x2, (/ 1 4) + x1} a__U42(x1,x2) weight: max{x2, x1} a__U52(x1,x2) weight: max{x2, x1} a__U181(x1,x2) weight: max{x2, x1} isLNatKind(x1) weight: x1 U211(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} #a__U202(x1,x2) weight: max{x2, x1} #a__U201(x1,x2,x3,x4) weight: max{0, x4, x3, x2} a__isPLNat(x1) weight: x1 a__isLNatKind(x1) weight: x1 #a__U121(x1,x2) weight: max{x2, x1} U52(x1,x2) weight: max{x2, x1} U61(x1,x2) weight: max{x2, x1} U31(x1,x2) weight: max{x2, x1} #a__U171(x1,x2,x3) weight: max{0, x3, x2} a__U71(x1,x2) weight: max{(/ 1 8) + x2, (/ 1 8) + x1} U92(x1) weight: (/ 3 8) + x1 #a__isPLNat(x1) weight: x1 head(x1) weight: x1 #a__afterNth(x1,x2) weight: max{x2, x1} U112(x1) weight: x1 #a__splitAt(x1,x2) weight: max{x2, x1} #a__isPLNatKind(x1) weight: x1 cons(x1,x2) weight: max{x2, x1} a__U92(x1) weight: (/ 3 8) + x1 a__U61(x1,x2) weight: max{x2, x1} U102(x1,x2) weight: max{x2, x1} snd(x1) weight: x1 a__take(x1,x2) weight: max{x2, (/ 1 4) + x1} U81(x1,x2) weight: max{x2, x1} #a__U41(x1,x2,x3) weight: max{0, x3, x2} U82(x1) weight: x1 tt() weight: (/ 1 8) a__isNatural(x1) weight: x1 a__U131(x1,x2,x3) weight: max{x3, (/ 1 8) + x2, x1} a__isNaturalKind(x1) weight: x1 #a__isNatural(x1) weight: x1 #a__fst(x1) weight: x1 a__U133(x1) weight: x1 a__U201(x1,x2,x3,x4) weight: max{x4, x3, x2, x1} a__U202(x1,x2) weight: max{x2, x1} U51(x1,x2,x3) weight: max{x3, x2, x1} #a__U132(x1,x2) weight: max{0, x2} a__and(x1,x2) weight: max{x2, x1} a__tail(x1) weight: (/ 1 2) + x1 a__U103(x1) weight: x1 a__isPLNatKind(x1) weight: x1 U53(x1) weight: x1 a__U112(x1) weight: x1 U41(x1,x2,x3) weight: max{x3, x2, x1} #a__tail(x1) weight: (/ 3 8) + x1 #a__U221(x1,x2,x3) weight: max{0, x3, (/ 1 8) + x2} a__U101(x1,x2,x3) weight: max{x3, (/ 1 4) + x2, x1} #a__U91(x1,x2) weight: max{0, (/ 1 4) + x2} U121(x1,x2) weight: max{x2, x1} a__head(x1) weight: x1 U181(x1,x2) weight: max{x2, x1} U122(x1) weight: x1 Usable rules: { 1..200 } Removed DPs: #32 #46..51 #55 #68 #78 #89 #114 #121..124 #137 #138 #141 #143 #146 #147 #157 #181 #198 #200 #209 #210 #213 #214 #219 #238 #247 #248 #250 #259..263 Number of SCCs: 1, DPs: 197, edges: 6017 SCC { #2..5 #7..14 #16..31 #33..39 #41..45 #52..54 #57..66 #70..74 #76 #77 #80..88 #90..96 #98..100 #102..113 #116..120 #125..136 #139 #140 #144 #145 #148 #150..153 #155 #156 #158 #160 #162..172 #174..180 #182..189 #191 #193..197 #199 #201 #202 #204..208 #211 #212 #215..218 #220..228 #231 #233..237 #239..242 #244..246 #251..258 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__U143(x1) weight: x1 #a__isNaturalKind(x1) weight: (/ 58891 8) a__U151(x1,x2,x3) weight: max{0, x1} #a__U131(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} U21(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} a__U102(x1,x2) weight: max{0, x1} #a__U143(x1) weight: 0 #a__U82(x1) weight: 0 a__U152(x1,x2) weight: max{0, x1} #a__U72(x1) weight: 0 U161(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U71(x1,x2) weight: 0 U11(x1,x2,x3) weight: max{(/ 246023 8) + x3, (/ 246023 8) + x2, (/ 246021 8) + x1} a__U171(x1,x2,x3) weight: max{(/ 61507 2) + x3, (/ 61507 2) + x2, 30753 + x1} #a__U92(x1) weight: 0 a__U191(x1,x2) weight: max{(/ 246019 8) + x2, (/ 246017 8) + x1} a__U153(x1) weight: x1 #a__U112(x1) weight: 0 s(x1) weight: x1 #a__U133(x1) weight: 0 #a__U31(x1,x2) weight: max{(/ 58891 8) + x2, (/ 58889 8) + x1} a__U132(x1,x2) weight: max{0, x1} U143(x1) weight: x1 #a__head(x1) weight: (/ 14723 2) + x1 #a__natsFrom(x1) weight: (/ 102125 4) isPLNatKind(x1) weight: (/ 1 8) U142(x1,x2) weight: max{0, x1} #a__U142(x1,x2) weight: max{0, (/ 29445 4) + x1} #a__U191(x1,x2) weight: max{0, (/ 76227 2) + x2} isPLNat(x1) weight: (/ 1 8) #a__snd(x1) weight: (/ 14723 2) + x1 a__afterNth(x1,x2) weight: max{30753 + x2, 30753 + x1} U42(x1,x2) weight: max{0, x1} U91(x1,x2) weight: max{0, x1} U221(x1,x2,x3) weight: max{(/ 246025 8) + x3, 30753 + x2, (/ 123011 4) + x1} a__U82(x1) weight: x1 #a__U152(x1,x2) weight: max{0, (/ 29445 4) + x1} #a__U153(x1) weight: 0 take(x1,x2) weight: max{(/ 246025 8) + x2, (/ 246025 8) + x1} U71(x1,x2) weight: max{0, x1} a__U62(x1) weight: x1 and(x1,x2) weight: max{x2, x1} U131(x1,x2,x3) weight: max{0, x1} a__U221(x1,x2,x3) weight: max{(/ 246025 8) + x3, 30753 + x2, (/ 123011 4) + x1} U101(x1,x2,x3) weight: max{0, x1} #a__U43(x1) weight: 0 pair(x1,x2) weight: max{x2, (/ 94857 8) + x1} fst(x1) weight: (/ 5 8) + x1 U111(x1,x2) weight: max{0, x1} U132(x1,x2) weight: max{0, x1} U43(x1) weight: x1 a__U121(x1,x2) weight: max{0, x1} U152(x1,x2) weight: max{0, x1} U103(x1) weight: x1 a__U111(x1,x2) weight: max{0, x1} natsFrom(x1) weight: (/ 1 4) + x1 #a__U103(x1) weight: 0 a__snd(x1) weight: (/ 1 2) + x1 #a__U181(x1,x2) weight: max{0, (/ 58891 8) + x2} #a__U51(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} isNaturalKind(x1) weight: (/ 1 8) splitAt(x1,x2) weight: max{(/ 246019 8) + x2, (/ 246019 8) + x1} U72(x1) weight: x1 #a__U11(x1,x2,x3) weight: max{0, 38114 + x3, 38114 + x2} a__U31(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} a__U51(x1,x2,x3) weight: max{0, x1} a__U81(x1,x2) weight: max{0, x1} #a__U53(x1) weight: 0 #a__take(x1,x2) weight: max{(/ 152457 4) + x2, (/ 152457 4) + x1} a__U43(x1) weight: x1 #a__isLNatKind(x1) weight: (/ 58891 8) #a__U62(x1) weight: 0 isNatural(x1) weight: (/ 1 8) #a__U42(x1,x2) weight: max{0, (/ 29445 4) + x1} a__U41(x1,x2,x3) weight: max{0, x1} #a__U122(x1) weight: 0 U201(x1,x2,x3,x4) weight: max{(/ 246019 8) + x4, (/ 61505 2) + x3, (/ 246019 8) + x2, (/ 123009 4) + x1} a__U122(x1) weight: x1 #a__U21(x1,x2) weight: max{0, (/ 14723 2) + x2} #a__U81(x1,x2) weight: max{0, (/ 29445 4) + x1} a__U161(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U61(x1,x2) weight: max{0, (/ 29445 4) + x1} U141(x1,x2,x3) weight: max{0, x1} a__fst(x1) weight: (/ 5 8) + x1 tail(x1) weight: (/ 1 8) + x1 a__natsFrom(x1) weight: (/ 1 4) + x1 #mark(x1) weight: (/ 29445 4) + x1 0() weight: (/ 1 8) #a__and(x1,x2) weight: max{0, (/ 29445 4) + x2} #a__U211(x1,x2) weight: 0 a__isLNat(x1) weight: (/ 1 8) U191(x1,x2) weight: max{(/ 246019 8) + x2, (/ 246017 8) + x1} a__U21(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} U153(x1) weight: x1 U171(x1,x2,x3) weight: max{(/ 61507 2) + x3, (/ 61507 2) + x2, 30753 + x1} a__U91(x1,x2) weight: max{0, x1} sel(x1,x2) weight: max{(/ 246029 8) + x2, (/ 246029 8) + x1} U202(x1,x2) weight: max{(/ 61505 2) + x2, x1} afterNth(x1,x2) weight: max{30753 + x2, 30753 + x1} #a__U151(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} #a__U111(x1,x2) weight: max{0, (/ 29445 4) + x1} #a__U161(x1,x2) weight: 0 #a__U141(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} nil() weight: 0 a__splitAt(x1,x2) weight: max{(/ 246019 8) + x2, (/ 246019 8) + x1} isLNat(x1) weight: (/ 1 8) a__U142(x1,x2) weight: max{0, x1} U62(x1) weight: x1 #a__U52(x1,x2) weight: max{0, (/ 29445 4) + x1} a__U211(x1,x2) weight: max{0, x2} #a__U102(x1,x2) weight: max{0, (/ 29445 4) + x1} #a__sel(x1,x2) weight: max{(/ 152459 4) + x2, (/ 152459 4) + x1} mark(x1) weight: x1 U151(x1,x2,x3) weight: max{0, x1} #a__isLNat(x1) weight: (/ 58891 8) U133(x1) weight: x1 a__U72(x1) weight: x1 #a__U101(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} a__U11(x1,x2,x3) weight: max{(/ 246023 8) + x3, (/ 246023 8) + x2, (/ 246021 8) + x1} a__U53(x1) weight: x1 a__U141(x1,x2,x3) weight: max{0, x1} a__sel(x1,x2) weight: max{(/ 246029 8) + x2, (/ 246029 8) + x1} a__U42(x1,x2) weight: max{0, x1} a__U52(x1,x2) weight: max{0, x1} a__U181(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} isLNatKind(x1) weight: (/ 1 8) U211(x1,x2) weight: max{0, x2} #a__U202(x1,x2) weight: max{(/ 58891 8) + x2, (/ 29445 4) + x1} #a__U201(x1,x2,x3,x4) weight: max{0, (/ 304909 8) + x4, (/ 304909 8) + x3, (/ 304909 8) + x2} a__isPLNat(x1) weight: (/ 1 8) a__isLNatKind(x1) weight: (/ 1 8) #a__U121(x1,x2) weight: max{0, (/ 29445 4) + x1} U52(x1,x2) weight: max{0, x1} U61(x1,x2) weight: max{0, x1} U31(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U171(x1,x2,x3) weight: max{0, (/ 304917 8) + x3, (/ 304917 8) + x2} a__U71(x1,x2) weight: max{0, x1} U92(x1) weight: (/ 1 8) #a__isPLNat(x1) weight: (/ 58891 8) head(x1) weight: (/ 1 4) + x1 #a__afterNth(x1,x2) weight: max{(/ 304913 8) + x2, (/ 304913 8) + x1} U112(x1) weight: x1 #a__splitAt(x1,x2) weight: max{(/ 304909 8) + x2, (/ 304909 8) + x1} #a__isPLNatKind(x1) weight: (/ 58891 8) cons(x1,x2) weight: max{x2, (/ 1 8) + x1} a__U92(x1) weight: (/ 1 8) a__U61(x1,x2) weight: max{0, x1} U102(x1,x2) weight: max{0, x1} snd(x1) weight: (/ 1 2) + x1 a__take(x1,x2) weight: max{(/ 246025 8) + x2, (/ 246025 8) + x1} U81(x1,x2) weight: max{0, x1} #a__U41(x1,x2,x3) weight: max{0, (/ 29445 4) + x1} U82(x1) weight: x1 tt() weight: (/ 1 8) a__isNatural(x1) weight: (/ 1 8) a__U131(x1,x2,x3) weight: max{0, x1} a__isNaturalKind(x1) weight: (/ 1 8) #a__isNatural(x1) weight: (/ 58891 8) #a__fst(x1) weight: (/ 58893 8) + x1 a__U133(x1) weight: x1 a__U201(x1,x2,x3,x4) weight: max{(/ 246019 8) + x4, (/ 61505 2) + x3, (/ 246019 8) + x2, (/ 123009 4) + x1} a__U202(x1,x2) weight: max{(/ 61505 2) + x2, x1} U51(x1,x2,x3) weight: max{0, x1} #a__U132(x1,x2) weight: max{0, (/ 29445 4) + x1} a__and(x1,x2) weight: max{x2, x1} a__tail(x1) weight: (/ 1 8) + x1 a__U103(x1) weight: x1 a__isPLNatKind(x1) weight: (/ 1 8) U53(x1) weight: x1 a__U112(x1) weight: x1 U41(x1,x2,x3) weight: max{0, x1} #a__tail(x1) weight: (/ 3 8) #a__U221(x1,x2,x3) weight: max{0, (/ 304913 8) + x3, (/ 304913 8) + x2} a__U101(x1,x2,x3) weight: max{0, x1} #a__U91(x1,x2) weight: 0 U121(x1,x2) weight: max{0, x1} a__head(x1) weight: (/ 1 4) + x1 U181(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} U122(x1) weight: x1 Usable rules: { 1..200 } Removed DPs: #3 #4 #9..14 #17 #18 #36 #42..45 #52 #53 #71 #72 #82..85 #87 #90 #95 #104..110 #132..136 #144 #145 #148 #152 #153 #156 #158 #175..178 #186 #187 #194..197 #199 #205..208 #216..218 #220 #231 #234..236 #241 #251..258 Number of SCCs: 1, DPs: 119, edges: 2091 SCC { #2 #5 #7 #8 #16 #19..31 #33..35 #37..39 #41 #54 #57..66 #70 #73 #74 #76 #77 #80 #81 #86 #88 #91..94 #96 #98..100 #102 #103 #111..113 #116..120 #125..131 #139 #140 #150 #151 #155 #160 #162..172 #174 #179 #180 #182..185 #188 #189 #191 #193 #201 #202 #204 #211 #212 #221..228 #233 #237 #239 #240 #242 #244..246 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__U143(x1) weight: x1 #a__isNaturalKind(x1) weight: (/ 1 4) a__U151(x1,x2,x3) weight: max{0, x1} #a__U131(x1,x2,x3) weight: max{0, (/ 1 8) + x1} U21(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} a__U102(x1,x2) weight: max{0, x1} #a__U143(x1) weight: 0 #a__U82(x1) weight: 0 a__U152(x1,x2) weight: max{0, x1} #a__U72(x1) weight: 0 U161(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U71(x1,x2) weight: 0 U11(x1,x2,x3) weight: max{(/ 246023 8) + x3, (/ 246023 8) + x2, (/ 246021 8) + x1} a__U171(x1,x2,x3) weight: max{(/ 61507 2) + x3, (/ 61507 2) + x2, 30753 + x1} #a__U92(x1) weight: 0 a__U191(x1,x2) weight: max{(/ 91219 8) + x2, (/ 1 8) + x1} a__U153(x1) weight: x1 #a__U112(x1) weight: 0 s(x1) weight: x1 #a__U133(x1) weight: 0 #a__U31(x1,x2) weight: max{0, (/ 58889 8) + x1} a__U132(x1,x2) weight: max{0, x1} U143(x1) weight: x1 #a__head(x1) weight: (/ 14723 2) + x1 #a__natsFrom(x1) weight: (/ 102125 4) isPLNatKind(x1) weight: (/ 1 8) U142(x1,x2) weight: max{0, x1} #a__U142(x1,x2) weight: max{0, (/ 1 8) + x1} #a__U191(x1,x2) weight: 0 isPLNat(x1) weight: (/ 1 8) #a__snd(x1) weight: (/ 14723 2) + x1 a__afterNth(x1,x2) weight: max{30753 + x2, 30753 + x1} U42(x1,x2) weight: max{0, x1} U91(x1,x2) weight: max{0, x1} U221(x1,x2,x3) weight: max{(/ 91221 8) + x3, (/ 22805 2) + x2, (/ 45609 4) + x1} a__U82(x1) weight: x1 #a__U152(x1,x2) weight: max{0, (/ 1 8) + x1} #a__U153(x1) weight: 0 take(x1,x2) weight: max{(/ 91221 8) + x2, (/ 91221 8) + x1} U71(x1,x2) weight: max{0, x1} a__U62(x1) weight: x1 and(x1,x2) weight: max{x2, x1} U131(x1,x2,x3) weight: max{0, x1} a__U221(x1,x2,x3) weight: max{(/ 91221 8) + x3, (/ 22805 2) + x2, (/ 45609 4) + x1} U101(x1,x2,x3) weight: max{0, x1} #a__U43(x1) weight: 0 pair(x1,x2) weight: max{(/ 1 8) + x2, (/ 1 4) + x1} fst(x1) weight: (/ 1 8) + x1 U111(x1,x2) weight: max{0, x1} U132(x1,x2) weight: max{0, x1} U43(x1) weight: x1 a__U121(x1,x2) weight: max{0, x1} U152(x1,x2) weight: max{0, x1} U103(x1) weight: x1 a__U111(x1,x2) weight: max{0, x1} natsFrom(x1) weight: (/ 1 4) + x1 #a__U103(x1) weight: 0 a__snd(x1) weight: (/ 38701 2) + x1 #a__U181(x1,x2) weight: 0 #a__U51(x1,x2,x3) weight: max{0, (/ 1 8) + x1} isNaturalKind(x1) weight: (/ 1 8) splitAt(x1,x2) weight: max{(/ 91219 8) + x2, (/ 91219 8) + x1} U72(x1) weight: x1 #a__U11(x1,x2,x3) weight: 0 a__U31(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} a__U51(x1,x2,x3) weight: max{0, x1} a__U81(x1,x2) weight: max{0, x1} #a__U53(x1) weight: 0 #a__take(x1,x2) weight: max{(/ 152457 4) + x2, (/ 152457 4) + x1} a__U43(x1) weight: x1 #a__isLNatKind(x1) weight: (/ 1 4) #a__U62(x1) weight: 0 isNatural(x1) weight: (/ 1 8) #a__U42(x1,x2) weight: max{0, (/ 1 8) + x1} a__U41(x1,x2,x3) weight: max{0, x1} #a__U122(x1) weight: 0 U201(x1,x2,x3,x4) weight: max{(/ 91219 8) + x4, (/ 22805 2) + x3, (/ 91219 8) + x2, (/ 45609 4) + x1} a__U122(x1) weight: x1 #a__U21(x1,x2) weight: 0 #a__U81(x1,x2) weight: max{0, (/ 1 8) + x1} a__U161(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U61(x1,x2) weight: max{0, (/ 1 8) + x1} U141(x1,x2,x3) weight: max{0, x1} a__fst(x1) weight: (/ 1 8) + x1 tail(x1) weight: (/ 1 8) + x1 a__natsFrom(x1) weight: (/ 1 4) + x1 #mark(x1) weight: (/ 1 8) + x1 0() weight: (/ 1 8) #a__and(x1,x2) weight: max{0, (/ 1 8) + x2} #a__U211(x1,x2) weight: 0 a__isLNat(x1) weight: (/ 1 8) U191(x1,x2) weight: max{(/ 91219 8) + x2, (/ 1 8) + x1} a__U21(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} U153(x1) weight: x1 U171(x1,x2,x3) weight: max{(/ 61507 2) + x3, (/ 61507 2) + x2, 30753 + x1} a__U91(x1,x2) weight: max{0, x1} sel(x1,x2) weight: max{(/ 246029 8) + x2, (/ 246029 8) + x1} U202(x1,x2) weight: max{(/ 22805 2) + x2, x1} afterNth(x1,x2) weight: max{30753 + x2, 30753 + x1} #a__U151(x1,x2,x3) weight: max{0, (/ 1 8) + x1} #a__U111(x1,x2) weight: max{0, (/ 1 8) + x1} #a__U161(x1,x2) weight: 0 #a__U141(x1,x2,x3) weight: max{0, (/ 1 8) + x1} nil() weight: 0 a__splitAt(x1,x2) weight: max{(/ 91219 8) + x2, (/ 91219 8) + x1} isLNat(x1) weight: (/ 1 8) a__U142(x1,x2) weight: max{0, x1} U62(x1) weight: x1 #a__U52(x1,x2) weight: max{0, (/ 1 8) + x1} a__U211(x1,x2) weight: max{0, x2} #a__U102(x1,x2) weight: max{0, (/ 1 8) + x1} #a__sel(x1,x2) weight: max{(/ 152459 4) + x2, (/ 152459 4) + x1} mark(x1) weight: x1 U151(x1,x2,x3) weight: max{0, x1} #a__isLNat(x1) weight: (/ 1 4) U133(x1) weight: x1 a__U72(x1) weight: x1 #a__U101(x1,x2,x3) weight: max{0, (/ 1 8) + x1} a__U11(x1,x2,x3) weight: max{(/ 246023 8) + x3, (/ 246023 8) + x2, (/ 246021 8) + x1} a__U53(x1) weight: x1 a__U141(x1,x2,x3) weight: max{0, x1} a__sel(x1,x2) weight: max{(/ 246029 8) + x2, (/ 246029 8) + x1} a__U42(x1,x2) weight: max{0, x1} a__U52(x1,x2) weight: max{0, x1} a__U181(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} isLNatKind(x1) weight: (/ 1 8) U211(x1,x2) weight: max{0, x2} #a__U202(x1,x2) weight: max{0, (/ 1 8) + x1} #a__U201(x1,x2,x3,x4) weight: max{0, (/ 22805 2) + x4, (/ 91221 8) + x3, (/ 22805 2) + x2} a__isPLNat(x1) weight: (/ 1 8) a__isLNatKind(x1) weight: (/ 1 8) #a__U121(x1,x2) weight: max{0, (/ 1 8) + x1} U52(x1,x2) weight: max{0, x1} U61(x1,x2) weight: max{0, x1} U31(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} #a__U171(x1,x2,x3) weight: 0 a__U71(x1,x2) weight: max{0, x1} U92(x1) weight: (/ 1 8) #a__isPLNat(x1) weight: (/ 1 4) head(x1) weight: (/ 1 4) + x1 #a__afterNth(x1,x2) weight: max{(/ 304913 8) + x2, (/ 304913 8) + x1} U112(x1) weight: x1 #a__splitAt(x1,x2) weight: max{(/ 22805 2) + x2, (/ 22805 2) + x1} #a__isPLNatKind(x1) weight: (/ 1 4) cons(x1,x2) weight: max{x2, (/ 1 4) + x1} a__U92(x1) weight: (/ 1 8) a__U61(x1,x2) weight: max{0, x1} U102(x1,x2) weight: max{0, x1} snd(x1) weight: (/ 38701 2) + x1 a__take(x1,x2) weight: max{(/ 91221 8) + x2, (/ 91221 8) + x1} U81(x1,x2) weight: max{0, x1} #a__U41(x1,x2,x3) weight: max{0, (/ 1 8) + x1} U82(x1) weight: x1 tt() weight: (/ 1 8) a__isNatural(x1) weight: (/ 1 8) a__U131(x1,x2,x3) weight: max{0, x1} a__isNaturalKind(x1) weight: (/ 1 8) #a__isNatural(x1) weight: (/ 1 4) #a__fst(x1) weight: (/ 58893 8) + x1 a__U133(x1) weight: x1 a__U201(x1,x2,x3,x4) weight: max{(/ 91219 8) + x4, (/ 22805 2) + x3, (/ 91219 8) + x2, (/ 45609 4) + x1} a__U202(x1,x2) weight: max{(/ 22805 2) + x2, x1} U51(x1,x2,x3) weight: max{0, x1} #a__U132(x1,x2) weight: max{0, (/ 1 8) + x1} a__and(x1,x2) weight: max{x2, x1} a__tail(x1) weight: (/ 1 8) + x1 a__U103(x1) weight: x1 a__isPLNatKind(x1) weight: (/ 1 8) U53(x1) weight: x1 a__U112(x1) weight: x1 U41(x1,x2,x3) weight: max{0, x1} #a__tail(x1) weight: (/ 3 8) #a__U221(x1,x2,x3) weight: 0 a__U101(x1,x2,x3) weight: max{0, x1} #a__U91(x1,x2) weight: 0 U121(x1,x2) weight: max{0, x1} a__head(x1) weight: (/ 1 4) + x1 U181(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 8) + x1} U122(x1) weight: x1 Usable rules: { 1..200 } Removed DPs: #96 #242 Number of SCCs: 2, DPs: 113, edges: 1853 SCC { #103 #185 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS...