MAYBE Input TRS: AC symbols: plus union mult 1: union(X,empty()) -> X 2: union(empty(),X) -> X 3: 0(z()) -> z() 4: U101(tt(),X) -> X 5: U11(tt()) -> z() 6: U111(tt(),A,B) -> plus(sum(A),sum(B)) 7: U21(tt(),X,Y) -> 0(mult(X,Y)) 8: U31(tt(),X,Y) -> plus(0(mult(X,Y)),Y) 9: U41(tt(),X) -> X 10: U51(tt(),X,Y) -> 0(plus(X,Y)) 11: U61(tt(),X,Y) -> 1(plus(X,Y)) 12: U71(tt(),X,Y) -> 0(plus(plus(X,Y),1(z()))) 13: U81(tt(),X) -> X 14: U91(tt(),A,B) -> mult(prod(A),prod(B)) 15: and(tt(),X) -> X 16: isBag(empty()) -> tt() 17: isBag(singl(V1)) -> isBin(V1) 18: isBag(union(V1,V2)) -> and(isBag(V1),isBag(V2)) 19: isBin(z()) -> tt() 20: isBin(0(V1)) -> isBin(V1) 21: isBin(1(V1)) -> isBin(V1) 22: isBin(mult(V1,V2)) -> and(isBin(V1),isBin(V2)) 23: isBin(plus(V1,V2)) -> and(isBin(V1),isBin(V2)) 24: isBin(prod(V1)) -> isBag(V1) 25: isBin(sum(V1)) -> isBag(V1) 26: mult(z(),X) -> U11(isBin(X)) 27: mult(0(X),Y) -> U21(and(isBin(X),isBin(Y)),X,Y) 28: mult(1(X),Y) -> U31(and(isBin(X),isBin(Y)),X,Y) 29: plus(z(),X) -> U41(isBin(X),X) 30: plus(0(X),0(Y)) -> U51(and(isBin(X),isBin(Y)),X,Y) 31: plus(0(X),1(Y)) -> U61(and(isBin(X),isBin(Y)),X,Y) 32: plus(1(X),1(Y)) -> U71(and(isBin(X),isBin(Y)),X,Y) 33: prod(empty()) -> 1(z()) 34: prod(singl(X)) -> U81(isBin(X),X) 35: prod(union(A,B)) -> U91(and(isBag(A),isBag(B)),A,B) 36: sum(empty()) -> 0(z()) 37: sum(singl(X)) -> U101(isBin(X),X) 38: sum(union(A,B)) -> U111(and(isBag(A),isBag(B)),A,B) Number of strict rules: 38 Direct POLO(bPol) ... failed. Uncurrying ... failed. Dependency Pairs: #1: #plus(z(),X) -> #U41(isBin(X),X) #2: #plus(z(),X) -> #isBin(X) #3: #prod(union(A,B)) -> #U91(and(isBag(A),isBag(B)),A,B) #4: #prod(union(A,B)) -> #and(isBag(A),isBag(B)) #5: #prod(union(A,B)) -> #isBag(A) #6: #prod(union(A,B)) -> #isBag(B) #7: #mult(x,mult(y,z)) ->= #mult(mult(x,y),z) #8: #mult(x,mult(y,z)) ->= #mult(x,y) #9: #sum(singl(X)) -> #U101(isBin(X),X) #10: #sum(singl(X)) -> #isBin(X) #11: #sum(union(A,B)) -> #U111(and(isBag(A),isBag(B)),A,B) #12: #sum(union(A,B)) -> #and(isBag(A),isBag(B)) #13: #sum(union(A,B)) -> #isBag(A) #14: #sum(union(A,B)) -> #isBag(B) #15: #U111(tt(),A,B) -> #plus(sum(A),sum(B)) #16: #U111(tt(),A,B) -> #sum(A) #17: #U111(tt(),A,B) -> #sum(B) #18: #union(x,union(y,z)) ->= #union(union(x,y),z) #19: #union(x,union(y,z)) ->= #union(x,y) #20: #U61(tt(),X,Y) -> #plus(X,Y) #21: #isBin(prod(V1)) -> #isBag(V1) #22: #isBin(plus(V1,V2)) -> #and(isBin(V1),isBin(V2)) #23: #isBin(plus(V1,V2)) -> #isBin(V1) #24: #isBin(plus(V1,V2)) -> #isBin(V2) #25: #U71(tt(),X,Y) -> #0(plus(plus(X,Y),1(z()))) #26: #U71(tt(),X,Y) -> #plus(plus(X,Y),1(z())) #27: #U71(tt(),X,Y) -> #plus(X,Y) #28: #plus(0(X),1(Y)) -> #U61(and(isBin(X),isBin(Y)),X,Y) #29: #plus(0(X),1(Y)) -> #and(isBin(X),isBin(Y)) #30: #plus(0(X),1(Y)) -> #isBin(X) #31: #plus(0(X),1(Y)) -> #isBin(Y) #32: #U91(tt(),A,B) -> #mult(prod(A),prod(B)) #33: #U91(tt(),A,B) -> #prod(A) #34: #U91(tt(),A,B) -> #prod(B) #35: #plus(0(X),0(Y)) -> #U51(and(isBin(X),isBin(Y)),X,Y) #36: #plus(0(X),0(Y)) -> #and(isBin(X),isBin(Y)) #37: #plus(0(X),0(Y)) -> #isBin(X) #38: #plus(0(X),0(Y)) -> #isBin(Y) #39: #isBin(sum(V1)) -> #isBag(V1) #40: #isBin(0(V1)) -> #isBin(V1) #41: #U21(tt(),X,Y) -> #0(mult(X,Y)) #42: #U21(tt(),X,Y) -> #mult(X,Y) #43: #plus(x,plus(y,z)) ->= #plus(plus(x,y),z) #44: #plus(x,plus(y,z)) ->= #plus(x,y) #45: #U51(tt(),X,Y) -> #0(plus(X,Y)) #46: #U51(tt(),X,Y) -> #plus(X,Y) #47: #mult(1(X),Y) -> #U31(and(isBin(X),isBin(Y)),X,Y) #48: #mult(1(X),Y) -> #and(isBin(X),isBin(Y)) #49: #mult(1(X),Y) -> #isBin(X) #50: #mult(1(X),Y) -> #isBin(Y) #51: #isBin(mult(V1,V2)) -> #and(isBin(V1),isBin(V2)) #52: #isBin(mult(V1,V2)) -> #isBin(V1) #53: #isBin(mult(V1,V2)) -> #isBin(V2) #54: #prod(singl(X)) -> #U81(isBin(X),X) #55: #prod(singl(X)) -> #isBin(X) #56: #mult(0(X),Y) -> #U21(and(isBin(X),isBin(Y)),X,Y) #57: #mult(0(X),Y) -> #and(isBin(X),isBin(Y)) #58: #mult(0(X),Y) -> #isBin(X) #59: #mult(0(X),Y) -> #isBin(Y) #60: #isBag(singl(V1)) -> #isBin(V1) #61: #plus(1(X),1(Y)) -> #U71(and(isBin(X),isBin(Y)),X,Y) #62: #plus(1(X),1(Y)) -> #and(isBin(X),isBin(Y)) #63: #plus(1(X),1(Y)) -> #isBin(X) #64: #plus(1(X),1(Y)) -> #isBin(Y) #65: #mult(z(),X) -> #U11(isBin(X)) #66: #mult(z(),X) -> #isBin(X) #67: #sum(empty()) -> #0(z()) #68: #isBin(1(V1)) -> #isBin(V1) #69: #U31(tt(),X,Y) -> #plus(0(mult(X,Y)),Y) #70: #U31(tt(),X,Y) -> #0(mult(X,Y)) #71: #U31(tt(),X,Y) -> #mult(X,Y) #72: #isBag(union(V1,V2)) -> #and(isBag(V1),isBag(V2)) #73: #isBag(union(V1,V2)) -> #isBag(V1) #74: #isBag(union(V1,V2)) -> #isBag(V2) Number of SCCs: 6, DPs: 34 SCC { #18 #19 } only weak rules. Number of SCCs: 5, DPs: 32 SCC { #11 #16 #17 } POLO(Sum)... succeeded. #0 w: 0 #isBag w: 0 U21 w: 0 1 w: 0 prod w: x1 + 1 U11 w: 0 z w: 1 #prod w: 0 U91 w: 0 #U101 w: 0 U71 w: 0 #U81 w: 0 and w: x1 + 38140 #plus w: 0 U101 w: 0 U111 w: 0 sum w: x1 + 1 mult w: 30613 isBin w: x1 + 8366 0 w: 0 #isBin w: 0 union w: x1 + x2 + 2 #U111 w: x2 + x3 + 1 singl w: 1 plus w: 38139 U61 w: 0 #U51 w: 0 #U11 w: 0 U31 w: 0 #U41 w: 0 empty w: 1 #U21 w: 0 U81 w: 0 tt w: 8369 #U71 w: 0 isBag w: 8368 U51 w: 0 #sum w: x1 U41 w: 0 #U31 w: 0 #and w: 0 #union w: 0 #U91 w: 0 #mult w: 0 #U61 w: 0 USABLE RULES: { } Removed DPs: #11 #16 #17 Number of SCCs: 4, DPs: 29 SCC { #3 #33 #34 } POLO(Sum)... succeeded. #0 w: 0 #isBag w: 0 U21 w: 0 1 w: 0 prod w: x1 + 1 U11 w: 0 z w: 2 #prod w: x1 U91 w: 0 #U101 w: 0 U71 w: 0 #U81 w: 0 and w: x1 + 38140 #plus w: 0 U101 w: 0 U111 w: 0 sum w: x1 + 1 mult w: 282 isBin w: x1 + 21680 0 w: 0 #isBin w: 0 union w: x1 + x2 + 2 #U111 w: 1 singl w: 1 plus w: 38139 U61 w: 0 #U51 w: 0 #U11 w: 0 U31 w: 0 #U41 w: 0 empty w: 1 #U21 w: 0 U81 w: 0 tt w: 21683 #U71 w: 0 isBag w: 21682 U51 w: 0 #sum w: 0 U41 w: 0 #U31 w: 0 #and w: 0 #union w: 0 #U91 w: x2 + x3 + 1 #mult w: 0 #U61 w: 0 USABLE RULES: { } Removed DPs: #3 #33 #34 Number of SCCs: 3, DPs: 26 SCC { #7 #8 #42 #47 #56 #71 } POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... failed. Finding a loop... failed.