/export/starexec/sandbox/solver/bin/starexec_run_Default /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE Input TRS: 1: zeros() -> cons(0(),n__zeros()) 2: U11(tt(),V1) -> U12(isNatList(activate(V1))) 3: U12(tt()) -> tt() 4: U21(tt(),V1) -> U22(isNat(activate(V1))) 5: U22(tt()) -> tt() 6: U31(tt(),V) -> U32(isNatList(activate(V))) 7: U32(tt()) -> tt() 8: U41(tt(),V1,V2) -> U42(isNat(activate(V1)),activate(V2)) 9: U42(tt(),V2) -> U43(isNatIList(activate(V2))) 10: U43(tt()) -> tt() 11: U51(tt(),V1,V2) -> U52(isNat(activate(V1)),activate(V2)) 12: U52(tt(),V2) -> U53(isNatList(activate(V2))) 13: U53(tt()) -> tt() 14: U61(tt(),V1,V2) -> U62(isNat(activate(V1)),activate(V2)) 15: U62(tt(),V2) -> U63(isNatIList(activate(V2))) 16: U63(tt()) -> tt() 17: U71(tt(),L) -> s(length(activate(L))) 18: U81(tt()) -> nil() 19: U91(tt(),IL,M,N) -> cons(activate(N),n__take(activate(M),activate(IL))) 20: and(tt(),X) -> activate(X) 21: isNat(n__0()) -> tt() 22: isNat(n__length(V1)) -> U11(isNatIListKind(activate(V1)),activate(V1)) 23: isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) 24: isNatIList(V) -> U31(isNatIListKind(activate(V)),activate(V)) 25: isNatIList(n__zeros()) -> tt() 26: isNatIList(n__cons(V1,V2)) -> U41(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) 27: isNatIListKind(n__nil()) -> tt() 28: isNatIListKind(n__zeros()) -> tt() 29: isNatIListKind(n__cons(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) 30: isNatIListKind(n__take(V1,V2)) -> and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) 31: isNatKind(n__0()) -> tt() 32: isNatKind(n__length(V1)) -> isNatIListKind(activate(V1)) 33: isNatKind(n__s(V1)) -> isNatKind(activate(V1)) 34: isNatList(n__nil()) -> tt() 35: isNatList(n__cons(V1,V2)) -> U51(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) 36: isNatList(n__take(V1,V2)) -> U61(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) 37: length(nil()) -> 0() 38: length(cons(N,L)) -> U71(and(and(isNatList(activate(L)),n__isNatIListKind(activate(L))),n__and(isNat(N),n__isNatKind(N))),activate(L)) 39: take(0(),IL) -> U81(and(isNatIList(IL),n__isNatIListKind(IL))) 40: take(s(M),cons(N,IL)) -> U91(and(and(isNatIList(activate(IL)),n__isNatIListKind(activate(IL))),n__and(and(isNat(M),n__isNatKind(M)),n__and(isNat(N),n__isNatKind(N)))),activate(IL),M,N) 41: zeros() -> n__zeros() 42: take(X1,X2) -> n__take(X1,X2) 43: 0() -> n__0() 44: length(X) -> n__length(X) 45: s(X) -> n__s(X) 46: cons(X1,X2) -> n__cons(X1,X2) 47: isNatIListKind(X) -> n__isNatIListKind(X) 48: nil() -> n__nil() 49: and(X1,X2) -> n__and(X1,X2) 50: isNatKind(X) -> n__isNatKind(X) 51: activate(n__zeros()) -> zeros() 52: activate(n__take(X1,X2)) -> take(X1,X2) 53: activate(n__0()) -> 0() 54: activate(n__length(X)) -> length(X) 55: activate(n__s(X)) -> s(X) 56: activate(n__cons(X1,X2)) -> cons(X1,X2) 57: activate(n__isNatIListKind(X)) -> isNatIListKind(X) 58: activate(n__nil()) -> nil() 59: activate(n__and(X1,X2)) -> and(X1,X2) 60: activate(n__isNatKind(X)) -> isNatKind(X) 61: activate(X) -> X Number of strict rules: 61 Direct POLO(bPol) ... failed. Uncurrying ... failed. Dependency Pairs: #1: #U11(tt(),V1) -> #U12(isNatList(activate(V1))) #2: #U11(tt(),V1) -> #isNatList(activate(V1)) #3: #U11(tt(),V1) -> #activate(V1) #4: #isNatIListKind(n__cons(V1,V2)) -> #and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) #5: #isNatIListKind(n__cons(V1,V2)) -> #isNatKind(activate(V1)) #6: #isNatIListKind(n__cons(V1,V2)) -> #activate(V1) #7: #isNatIListKind(n__cons(V1,V2)) -> #activate(V2) #8: #isNatList(n__cons(V1,V2)) -> #U51(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) #9: #isNatList(n__cons(V1,V2)) -> #and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) #10: #isNatList(n__cons(V1,V2)) -> #isNatKind(activate(V1)) #11: #isNatList(n__cons(V1,V2)) -> #activate(V1) #12: #isNatList(n__cons(V1,V2)) -> #activate(V2) #13: #isNatList(n__cons(V1,V2)) -> #activate(V1) #14: #isNatList(n__cons(V1,V2)) -> #activate(V2) #15: #length(nil()) -> #0() #16: #activate(n__0()) -> #0() #17: #activate(n__nil()) -> #nil() #18: #length(cons(N,L)) -> #U71(and(and(isNatList(activate(L)),n__isNatIListKind(activate(L))),n__and(isNat(N),n__isNatKind(N))),activate(L)) #19: #length(cons(N,L)) -> #and(and(isNatList(activate(L)),n__isNatIListKind(activate(L))),n__and(isNat(N),n__isNatKind(N))) #20: #length(cons(N,L)) -> #and(isNatList(activate(L)),n__isNatIListKind(activate(L))) #21: #length(cons(N,L)) -> #isNatList(activate(L)) #22: #length(cons(N,L)) -> #activate(L) #23: #length(cons(N,L)) -> #activate(L) #24: #length(cons(N,L)) -> #isNat(N) #25: #length(cons(N,L)) -> #activate(L) #26: #U31(tt(),V) -> #U32(isNatList(activate(V))) #27: #U31(tt(),V) -> #isNatList(activate(V)) #28: #U31(tt(),V) -> #activate(V) #29: #activate(n__and(X1,X2)) -> #and(X1,X2) #30: #activate(n__s(X)) -> #s(X) #31: #take(s(M),cons(N,IL)) -> #U91(and(and(isNatIList(activate(IL)),n__isNatIListKind(activate(IL))),n__and(and(isNat(M),n__isNatKind(M)),n__and(isNat(N),n__isNatKind(N)))),activate(IL),M,N) #32: #take(s(M),cons(N,IL)) -> #and(and(isNatIList(activate(IL)),n__isNatIListKind(activate(IL))),n__and(and(isNat(M),n__isNatKind(M)),n__and(isNat(N),n__isNatKind(N)))) #33: #take(s(M),cons(N,IL)) -> #and(isNatIList(activate(IL)),n__isNatIListKind(activate(IL))) #34: #take(s(M),cons(N,IL)) -> #isNatIList(activate(IL)) #35: #take(s(M),cons(N,IL)) -> #activate(IL) #36: #take(s(M),cons(N,IL)) -> #activate(IL) #37: #take(s(M),cons(N,IL)) -> #and(isNat(M),n__isNatKind(M)) #38: #take(s(M),cons(N,IL)) -> #isNat(M) #39: #take(s(M),cons(N,IL)) -> #isNat(N) #40: #take(s(M),cons(N,IL)) -> #activate(IL) #41: #activate(n__zeros()) -> #zeros() #42: #U42(tt(),V2) -> #U43(isNatIList(activate(V2))) #43: #U42(tt(),V2) -> #isNatIList(activate(V2)) #44: #U42(tt(),V2) -> #activate(V2) #45: #U51(tt(),V1,V2) -> #U52(isNat(activate(V1)),activate(V2)) #46: #U51(tt(),V1,V2) -> #isNat(activate(V1)) #47: #U51(tt(),V1,V2) -> #activate(V1) #48: #U51(tt(),V1,V2) -> #activate(V2) #49: #activate(n__isNatIListKind(X)) -> #isNatIListKind(X) #50: #isNatIList(V) -> #U31(isNatIListKind(activate(V)),activate(V)) #51: #isNatIList(V) -> #isNatIListKind(activate(V)) #52: #isNatIList(V) -> #activate(V) #53: #isNatIList(V) -> #activate(V) #54: #isNat(n__s(V1)) -> #U21(isNatKind(activate(V1)),activate(V1)) #55: #isNat(n__s(V1)) -> #isNatKind(activate(V1)) #56: #isNat(n__s(V1)) -> #activate(V1) #57: #isNat(n__s(V1)) -> #activate(V1) #58: #U52(tt(),V2) -> #U53(isNatList(activate(V2))) #59: #U52(tt(),V2) -> #isNatList(activate(V2)) #60: #U52(tt(),V2) -> #activate(V2) #61: #activate(n__cons(X1,X2)) -> #cons(X1,X2) #62: #U61(tt(),V1,V2) -> #U62(isNat(activate(V1)),activate(V2)) #63: #U61(tt(),V1,V2) -> #isNat(activate(V1)) #64: #U61(tt(),V1,V2) -> #activate(V1) #65: #U61(tt(),V1,V2) -> #activate(V2) #66: #isNatIListKind(n__take(V1,V2)) -> #and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) #67: #isNatIListKind(n__take(V1,V2)) -> #isNatKind(activate(V1)) #68: #isNatIListKind(n__take(V1,V2)) -> #activate(V1) #69: #isNatIListKind(n__take(V1,V2)) -> #activate(V2) #70: #activate(n__take(X1,X2)) -> #take(X1,X2) #71: #and(tt(),X) -> #activate(X) #72: #take(0(),IL) -> #U81(and(isNatIList(IL),n__isNatIListKind(IL))) #73: #take(0(),IL) -> #and(isNatIList(IL),n__isNatIListKind(IL)) #74: #take(0(),IL) -> #isNatIList(IL) #75: #isNatKind(n__s(V1)) -> #isNatKind(activate(V1)) #76: #isNatKind(n__s(V1)) -> #activate(V1) #77: #isNat(n__length(V1)) -> #U11(isNatIListKind(activate(V1)),activate(V1)) #78: #isNat(n__length(V1)) -> #isNatIListKind(activate(V1)) #79: #isNat(n__length(V1)) -> #activate(V1) #80: #isNat(n__length(V1)) -> #activate(V1) #81: #activate(n__isNatKind(X)) -> #isNatKind(X) #82: #U71(tt(),L) -> #s(length(activate(L))) #83: #U71(tt(),L) -> #length(activate(L)) #84: #U71(tt(),L) -> #activate(L) #85: #isNatKind(n__length(V1)) -> #isNatIListKind(activate(V1)) #86: #isNatKind(n__length(V1)) -> #activate(V1) #87: #U91(tt(),IL,M,N) -> #cons(activate(N),n__take(activate(M),activate(IL))) #88: #U91(tt(),IL,M,N) -> #activate(N) #89: #U91(tt(),IL,M,N) -> #activate(M) #90: #U91(tt(),IL,M,N) -> #activate(IL) #91: #isNatIList(n__cons(V1,V2)) -> #U41(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) #92: #isNatIList(n__cons(V1,V2)) -> #and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) #93: #isNatIList(n__cons(V1,V2)) -> #isNatKind(activate(V1)) #94: #isNatIList(n__cons(V1,V2)) -> #activate(V1) #95: #isNatIList(n__cons(V1,V2)) -> #activate(V2) #96: #isNatIList(n__cons(V1,V2)) -> #activate(V1) #97: #isNatIList(n__cons(V1,V2)) -> #activate(V2) #98: #isNatList(n__take(V1,V2)) -> #U61(and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))),activate(V1),activate(V2)) #99: #isNatList(n__take(V1,V2)) -> #and(isNatKind(activate(V1)),n__isNatIListKind(activate(V2))) #100: #isNatList(n__take(V1,V2)) -> #isNatKind(activate(V1)) #101: #isNatList(n__take(V1,V2)) -> #activate(V1) #102: #isNatList(n__take(V1,V2)) -> #activate(V2) #103: #isNatList(n__take(V1,V2)) -> #activate(V1) #104: #isNatList(n__take(V1,V2)) -> #activate(V2) #105: #zeros() -> #cons(0(),n__zeros()) #106: #zeros() -> #0() #107: #activate(n__length(X)) -> #length(X) #108: #U41(tt(),V1,V2) -> #U42(isNat(activate(V1)),activate(V2)) #109: #U41(tt(),V1,V2) -> #isNat(activate(V1)) #110: #U41(tt(),V1,V2) -> #activate(V1) #111: #U41(tt(),V1,V2) -> #activate(V2) #112: #U62(tt(),V2) -> #U63(isNatIList(activate(V2))) #113: #U62(tt(),V2) -> #isNatIList(activate(V2)) #114: #U62(tt(),V2) -> #activate(V2) #115: #U21(tt(),V1) -> #U22(isNat(activate(V1))) #116: #U21(tt(),V1) -> #isNat(activate(V1)) #117: #U21(tt(),V1) -> #activate(V1) #118: #U81(tt()) -> #nil() Number of SCCs: 1, DPs: 100 SCC { #2..14 #18..25 #27..29 #31..40 #43..57 #59 #60 #62..71 #73..81 #83..86 #88..104 #107..111 #113 #114 #116 #117 } POLO(Sum)... succeeded. #0 w: 0 #U32 w: 0 #isNatIListKind w: x1 + 2 isNatKind w: x1 + 3 U21 w: x1 + x2 isNatList w: x1 + 1 U11 w: 0 #cons w: 0 s w: x1 #isNat w: x1 + 2 #take w: x1 + x2 + 6 U42 w: 0 U91 w: x2 + x3 + x4 + 7 activate w: x1 n__isNatIListKind w: x1 + 2 take w: x1 + x2 + 7 U71 w: x1 + x2 + 2 n__isNatKind w: x1 + 3 #U81 w: 0 and w: x2 n__zeros w: 4 isNatIList w: 1 U43 w: 1 #activate w: x1 #U53 w: 0 #U43 w: 0 U63 w: 1 zeros w: 4 n__nil w: 1 #U52 w: x2 + 3 U12 w: 0 n__s w: x1 #U42 w: x2 + 5 #U12 w: 0 #U62 w: x2 + 6 0 w: 0 #zeros w: 0 n__take w: x1 + x2 + 7 #isNatList w: x1 + 3 #s w: 0 n__cons w: x1 + x2 nil w: 1 isNatIListKind w: x1 + 2 U62 w: 0 #U63 w: 0 #nil w: 0 U32 w: x1 + 2 n__0 w: 0 n__length w: x1 + 5 isNat w: 0 U52 w: 5 U61 w: 9 #U51 w: x2 + x3 + 3 #U11 w: x2 + 4 U31 w: 2 #U41 w: x2 + x3 + 5 cons w: x1 + x2 #isNatIList w: x1 + 5 #U21 w: x2 + 2 U81 w: x1 #U22 w: 0 tt w: 3 n__and w: x2 #U71 w: x2 + 4 U22 w: 4 U51 w: x1 + x3 + 1 #isNatKind w: x1 + 1 U53 w: 6 length w: x1 + 5 #length w: x1 + 4 U41 w: x1 + x3 #U31 w: x2 + 4 #and w: x2 #U91 w: x2 + x3 + x4 + 1 #U61 w: x2 + x3 + 7 USABLE RULES: { 1 13 17..20 27..33 37..61 } Removed DPs: #2 #3 #5..7 #9..14 #19..25 #27 #28 #31..40 #44 #46..48 #50..53 #55..57 #60 #62..70 #73 #74 #76..81 #84..86 #88..90 #92..104 #107 #109..111 #113 #114 #117 Number of SCCs: 6, DPs: 15 SCC { #75 } POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... failed. Finding a loop... failed.