Input TRS: 1: zeros() -> cons(0(),n__zeros()) 2: U11(tt()) -> tt() 3: U21(tt()) -> tt() 4: U31(tt()) -> tt() 5: U41(tt(),V2) -> U42(isNatIList(activate(V2))) 6: U42(tt()) -> tt() 7: U51(tt(),V2) -> U52(isNatList(activate(V2))) 8: U52(tt()) -> tt() 9: U61(tt(),V2) -> U62(isNatIList(activate(V2))) 10: U62(tt()) -> tt() 11: U71(tt(),L,N) -> U72(isNat(activate(N)),activate(L)) 12: U72(tt(),L) -> s(length(activate(L))) 13: U81(tt()) -> nil() 14: U91(tt(),IL,M,N) -> U92(isNat(activate(M)),activate(IL),activate(M),activate(N)) 15: U92(tt(),IL,M,N) -> U93(isNat(activate(N)),activate(IL),activate(M),activate(N)) 16: U93(tt(),IL,M,N) -> cons(activate(N),n__take(activate(M),activate(IL))) 17: isNat(n__0()) -> tt() 18: isNat(n__length(V1)) -> U11(isNatList(activate(V1))) 19: isNat(n__s(V1)) -> U21(isNat(activate(V1))) 20: isNatIList(V) -> U31(isNatList(activate(V))) 21: isNatIList(n__zeros()) -> tt() 22: isNatIList(n__cons(V1,V2)) -> U41(isNat(activate(V1)),activate(V2)) 23: isNatList(n__nil()) -> tt() 24: isNatList(n__cons(V1,V2)) -> U51(isNat(activate(V1)),activate(V2)) 25: isNatList(n__take(V1,V2)) -> U61(isNat(activate(V1)),activate(V2)) 26: length(nil()) -> 0() 27: length(cons(N,L)) -> U71(isNatList(activate(L)),activate(L),N) 28: take(0(),IL) -> U81(isNatIList(IL)) 29: take(s(M),cons(N,IL)) -> U91(isNatIList(activate(IL)),activate(IL),M,N) 30: zeros() -> n__zeros() 31: take(X1,X2) -> n__take(X1,X2) 32: 0() -> n__0() 33: length(X) -> n__length(X) 34: s(X) -> n__s(X) 35: cons(X1,X2) -> n__cons(X1,X2) 36: nil() -> n__nil() 37: activate(n__zeros()) -> zeros() 38: activate(n__take(X1,X2)) -> take(X1,X2) 39: activate(n__0()) -> 0() 40: activate(n__length(X)) -> length(X) 41: activate(n__s(X)) -> s(X) 42: activate(n__cons(X1,X2)) -> cons(X1,X2) 43: activate(n__nil()) -> nil() 44: activate(X) -> X Number of strict rules: 44 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #activate(n__nil()) -> #nil() #2: #take(s(M),cons(N,IL)) -> #U91(isNatIList(activate(IL)),activate(IL),M,N) #3: #take(s(M),cons(N,IL)) -> #isNatIList(activate(IL)) #4: #take(s(M),cons(N,IL)) -> #activate(IL) #5: #take(s(M),cons(N,IL)) -> #activate(IL) #6: #activate(n__cons(X1,X2)) -> #cons(X1,X2) #7: #activate(n__s(X)) -> #s(X) #8: #activate(n__zeros()) -> #zeros() #9: #activate(n__take(X1,X2)) -> #take(X1,X2) #10: #activate(n__length(X)) -> #length(X) #11: #U81(tt()) -> #nil() #12: #U61(tt(),V2) -> #U62(isNatIList(activate(V2))) #13: #U61(tt(),V2) -> #isNatIList(activate(V2)) #14: #U61(tt(),V2) -> #activate(V2) #15: #U71(tt(),L,N) -> #U72(isNat(activate(N)),activate(L)) #16: #U71(tt(),L,N) -> #isNat(activate(N)) #17: #U71(tt(),L,N) -> #activate(N) #18: #U71(tt(),L,N) -> #activate(L) #19: #isNatList(n__cons(V1,V2)) -> #U51(isNat(activate(V1)),activate(V2)) #20: #isNatList(n__cons(V1,V2)) -> #isNat(activate(V1)) #21: #isNatList(n__cons(V1,V2)) -> #activate(V1) #22: #isNatList(n__cons(V1,V2)) -> #activate(V2) #23: #U72(tt(),L) -> #s(length(activate(L))) #24: #U72(tt(),L) -> #length(activate(L)) #25: #U72(tt(),L) -> #activate(L) #26: #U91(tt(),IL,M,N) -> #U92(isNat(activate(M)),activate(IL),activate(M),activate(N)) #27: #U91(tt(),IL,M,N) -> #isNat(activate(M)) #28: #U91(tt(),IL,M,N) -> #activate(M) #29: #U91(tt(),IL,M,N) -> #activate(IL) #30: #U91(tt(),IL,M,N) -> #activate(M) #31: #U91(tt(),IL,M,N) -> #activate(N) #32: #isNatList(n__take(V1,V2)) -> #U61(isNat(activate(V1)),activate(V2)) #33: #isNatList(n__take(V1,V2)) -> #isNat(activate(V1)) #34: #isNatList(n__take(V1,V2)) -> #activate(V1) #35: #isNatList(n__take(V1,V2)) -> #activate(V2) #36: #isNatIList(V) -> #U31(isNatList(activate(V))) #37: #isNatIList(V) -> #isNatList(activate(V)) #38: #isNatIList(V) -> #activate(V) #39: #U51(tt(),V2) -> #U52(isNatList(activate(V2))) #40: #U51(tt(),V2) -> #isNatList(activate(V2)) #41: #U51(tt(),V2) -> #activate(V2) #42: #activate(n__0()) -> #0() #43: #U41(tt(),V2) -> #U42(isNatIList(activate(V2))) #44: #U41(tt(),V2) -> #isNatIList(activate(V2)) #45: #U41(tt(),V2) -> #activate(V2) #46: #take(0(),IL) -> #U81(isNatIList(IL)) #47: #take(0(),IL) -> #isNatIList(IL) #48: #isNatIList(n__cons(V1,V2)) -> #U41(isNat(activate(V1)),activate(V2)) #49: #isNatIList(n__cons(V1,V2)) -> #isNat(activate(V1)) #50: #isNatIList(n__cons(V1,V2)) -> #activate(V1) #51: #isNatIList(n__cons(V1,V2)) -> #activate(V2) #52: #length(cons(N,L)) -> #U71(isNatList(activate(L)),activate(L),N) #53: #length(cons(N,L)) -> #isNatList(activate(L)) #54: #length(cons(N,L)) -> #activate(L) #55: #length(cons(N,L)) -> #activate(L) #56: #isNat(n__s(V1)) -> #U21(isNat(activate(V1))) #57: #isNat(n__s(V1)) -> #isNat(activate(V1)) #58: #isNat(n__s(V1)) -> #activate(V1) #59: #length(nil()) -> #0() #60: #U93(tt(),IL,M,N) -> #cons(activate(N),n__take(activate(M),activate(IL))) #61: #U93(tt(),IL,M,N) -> #activate(N) #62: #U93(tt(),IL,M,N) -> #activate(M) #63: #U93(tt(),IL,M,N) -> #activate(IL) #64: #zeros() -> #cons(0(),n__zeros()) #65: #zeros() -> #0() #66: #U92(tt(),IL,M,N) -> #U93(isNat(activate(N)),activate(IL),activate(M),activate(N)) #67: #U92(tt(),IL,M,N) -> #isNat(activate(N)) #68: #U92(tt(),IL,M,N) -> #activate(N) #69: #U92(tt(),IL,M,N) -> #activate(IL) #70: #U92(tt(),IL,M,N) -> #activate(M) #71: #U92(tt(),IL,M,N) -> #activate(N) #72: #isNat(n__length(V1)) -> #U11(isNatList(activate(V1))) #73: #isNat(n__length(V1)) -> #isNatList(activate(V1)) #74: #isNat(n__length(V1)) -> #activate(V1) Number of SCCs: 1, DPs: 56, edges: 184 SCC { #2..5 #9 #10 #13..22 #24..35 #37 #38 #40 #41 #44 #45 #47..55 #57 #58 #61..63 #66..71 #73 #74 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #0() weight: 0 #U72(x1,x2) weight: (/ 3 8) + x2 U21(x1) weight: 0 isNatList(x1) weight: (/ 1 8) U11(x1) weight: 0 #cons(x1,x2) weight: 0 s(x1) weight: x1 #isNat(x1) weight: (/ 1 8) + x1 #take(x1,x2) weight: (/ 1 2) + x1 + x2 U42(x1) weight: (/ 1 4) U91(x1,x2,x3,x4) weight: (/ 5 8) + x2 + x3 + x4 activate(x1) weight: x1 take(x1,x2) weight: (/ 5 8) + x1 + x2 U71(x1,x2,x3) weight: (/ 1 2) + x2 #U81(x1) weight: 0 #U92(x1,x2,x3,x4) weight: (/ 1 4) + x2 + x3 + x4 n__zeros() weight: 0 isNatIList(x1) weight: (/ 1 8) #U93(x1,x2,x3,x4) weight: (/ 1 8) + x2 + x3 + x4 #activate(x1) weight: x1 U93(x1,x2,x3,x4) weight: (/ 5 8) + x2 + x3 + x4 U72(x1,x2) weight: (/ 1 2) + x2 zeros() weight: 0 n__nil() weight: 0 #U52(x1) weight: 0 n__s(x1) weight: x1 #U42(x1) weight: 0 #U62(x1) weight: 0 0() weight: 0 #zeros() weight: 0 n__take(x1,x2) weight: (/ 5 8) + x1 + x2 #isNatList(x1) weight: (/ 1 4) + x1 #s(x1) weight: 0 n__cons(x1,x2) weight: x1 + x2 nil() weight: 0 U62(x1) weight: (/ 3 8) #nil() weight: 0 n__0() weight: 0 n__length(x1) weight: (/ 1 2) + x1 isNat(x1) weight: (/ 1 8) U52(x1) weight: (/ 3 8) U61(x1,x2) weight: (/ 1 4) #U51(x1,x2) weight: (/ 1 4) + x2 #U11(x1) weight: 0 U31(x1) weight: (/ 1 4) U92(x1,x2,x3,x4) weight: (/ 5 8) + x2 + x3 + x4 #U41(x1,x2) weight: (/ 3 8) + x2 cons(x1,x2) weight: x1 + x2 #isNatIList(x1) weight: (/ 3 8) + x1 #U21(x1) weight: 0 U81(x1) weight: 0 tt() weight: 0 #U71(x1,x2,x3) weight: (/ 3 8) + x2 + x3 U51(x1,x2) weight: (/ 1 4) + x2 length(x1) weight: (/ 1 2) + x1 #length(x1) weight: (/ 3 8) + x1 U41(x1,x2) weight: (/ 1 8) + x1 + x2 #U31(x1) weight: 0 #U91(x1,x2,x3,x4) weight: (/ 3 8) + x2 + x3 + x4 #U61(x1,x2) weight: (/ 1 2) + x2 Usable rules: { 1..3 11..19 26..44 } Removed DPs: #2..5 #9 #10 #13 #14 #16..18 #20..22 #25..35 #37 #38 #41 #45 #47 #49..51 #53..55 #58 #61..63 #66..71 #73 #74 Number of SCCs: 4, DPs: 8, edges: 8 SCC { #57 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... succeeded. #0() weight: 0; 0 #U72(x1,x2) weight: 0; 0 U21(x1) weight: 0; x1_1 isNatList(x1) weight: x1_2; x1_2 U11(x1) weight: 0; 0 #cons(x1,x2) weight: 0; 0 s(x1) weight: x1_2; (/ 47 8) + x1_1 #isNat(x1) weight: x1_1 + x1_2; 0 #take(x1,x2) weight: 0; 0 U42(x1) weight: 0; (/ 29 8) U91(x1,x2,x3,x4) weight: (/ 37 16) + x4_1 + x4_2 + x3_1 + x3_2 + x2_1 + x1_2; (/ 29 8) activate(x1) weight: (/ 1 4) + x1_1; x1_2 take(x1,x2) weight: (/ 1 4) + x2_1 + x1_1 + x1_2; (/ 29 8) U71(x1,x2,x3) weight: x2_1 + x1_2; (/ 47 16) + x3_1 + x3_2 + x2_1 + x1_2 #U81(x1) weight: 0; 0 #U92(x1,x2,x3,x4) weight: 0; 0 n__zeros() weight: (/ 1 16); (/ 1 16) isNatIList(x1) weight: (/ 1 16); (/ 29 8) + x1_2 #U93(x1,x2,x3,x4) weight: 0; 0 #activate(x1) weight: 0; 0 U93(x1,x2,x3,x4) weight: (/ 71 16) + x4_1 + x4_2 + x3_1 + x3_2 + x2_1; (/ 29 8) U72(x1,x2) weight: (/ 27 8) + x2_1; (/ 101 16) + x2_1 zeros() weight: (/ 5 16); (/ 1 16) n__nil() weight: 0; (/ 29 8) #U52(x1) weight: 0; 0 n__s(x1) weight: x1_2; (/ 47 8) + x1_1 #U42(x1) weight: 0; 0 #U62(x1) weight: 0; 0 0() weight: (/ 1 16); (/ 1 16) #zeros() weight: 0; 0 n__take(x1,x2) weight: x2_1 + x1_1 + x1_2; (/ 29 8) #isNatList(x1) weight: 0; 0 #s(x1) weight: 0; 0 n__cons(x1,x2) weight: (/ 1 16) + x2_1 + x2_2 + x1_1 + x1_2; x2_2 nil() weight: 0; (/ 29 8) U62(x1) weight: 0; (/ 29 8) #nil() weight: 0; 0 n__0() weight: (/ 1 16); (/ 1 16) n__length(x1) weight: x1_1; (/ 25 8) + x1_1 isNat(x1) weight: x1_2; x1_2 U52(x1) weight: 0; x1_2 U61(x1,x2) weight: 0; (/ 29 8) #U51(x1,x2) weight: 0; 0 #U11(x1) weight: 0; 0 U31(x1) weight: 0; (/ 29 8) U92(x1,x2,x3,x4) weight: (/ 83 16) + x4_1 + x4_2 + x3_1 + x3_2 + x2_1; (/ 29 8) #U41(x1,x2) weight: 0; 0 cons(x1,x2) weight: (/ 1 16) + x2_1 + x2_2 + x1_1 + x1_2; x2_2 #isNatIList(x1) weight: 0; 0 #U21(x1) weight: 0; 0 U81(x1) weight: 0; (/ 29 8) tt() weight: 0; (/ 29 8) #U71(x1,x2,x3) weight: 0; 0 U51(x1,x2) weight: 0; x2_2 length(x1) weight: (/ 3 16) + x1_1; (/ 25 8) + x1_1 #length(x1) weight: 0; 0 U41(x1,x2) weight: 0; (/ 29 8) + x2_2 #U31(x1) weight: 0; 0 #U91(x1,x2,x3,x4) weight: 0; 0 #U61(x1,x2) weight: 0; 0 Usable rules: { 1 4..16 20..44 } Removed DPs: #57 Number of SCCs: 3, DPs: 7, edges: 7 SCC { #19 #40 } 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