19.84/21.20 YES 19.84/21.20 19.84/21.20 Problem 1: 19.84/21.20 19.84/21.20 (VAR A B V1 V2 X Y) 19.84/21.20 (THEORY 19.84/21.20 (AC mult plus union)) 19.84/21.20 (RULES 19.84/21.20 0(z) -> z 19.84/21.20 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.20 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.20 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.20 U12(tt) -> tt 19.84/21.20 U121(tt,X) -> X 19.84/21.20 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.20 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.20 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.20 U161(tt,X) -> X 19.84/21.20 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.20 U181(tt,X) -> X 19.84/21.20 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.20 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.20 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.20 U23(tt) -> tt 19.84/21.20 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.20 U32(tt) -> tt 19.84/21.20 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.20 U42(tt) -> tt 19.84/21.20 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.20 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.20 U53(tt) -> tt 19.84/21.20 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.20 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.20 U63(tt) -> tt 19.84/21.20 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.20 U72(tt) -> tt 19.84/21.20 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.20 U82(tt) -> tt 19.84/21.20 U91(tt) -> z 19.84/21.20 and(tt,X) -> X 19.84/21.20 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.20 isBag(empty) -> tt 19.84/21.20 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.20 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.20 isBagKind(empty) -> tt 19.84/21.20 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.20 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.20 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.20 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.20 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.20 isBin(z) -> tt 19.84/21.20 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.20 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.20 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.20 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.20 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.20 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.20 isBinKind(z) -> tt 19.84/21.20 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.20 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.20 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 prod(empty) -> 1(z) 19.84/21.20 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.20 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 sum(empty) -> 0(z) 19.84/21.20 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.20 union(empty,X) -> X 19.84/21.20 union(X,empty) -> X 19.84/21.20 ) 19.84/21.20 19.84/21.20 Problem 1: 19.84/21.20 19.84/21.20 Dependency Pairs Processor: 19.84/21.20 -> FAxioms: 19.84/21.20 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.84/21.20 MULT(x6,x7) = MULT(x7,x6) 19.84/21.20 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.84/21.20 PLUS(x6,x7) = PLUS(x7,x6) 19.84/21.20 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.20 UNION(x6,x7) = UNION(x7,x6) 19.84/21.20 -> Pairs: 19.84/21.20 U101#(tt,X,Y) -> 0#(mult(X,Y)) 19.84/21.20 U101#(tt,X,Y) -> MULT(X,Y) 19.84/21.20 U11#(tt,V1) -> U12#(isBin(V1)) 19.84/21.20 U11#(tt,V1) -> ISBIN(V1) 19.84/21.20 U111#(tt,X,Y) -> 0#(mult(X,Y)) 19.84/21.20 U111#(tt,X,Y) -> MULT(X,Y) 19.84/21.20 U111#(tt,X,Y) -> PLUS(0(mult(X,Y)),Y) 19.84/21.20 U131#(tt,X,Y) -> 0#(plus(X,Y)) 19.84/21.20 U131#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U141#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U151#(tt,X,Y) -> 0#(plus(plus(X,Y),1(z))) 19.84/21.20 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.84/21.20 U151#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U171#(tt,A,B) -> MULT(prod(A),prod(B)) 19.84/21.20 U171#(tt,A,B) -> PROD(A) 19.84/21.20 U171#(tt,A,B) -> PROD(B) 19.84/21.20 U191#(tt,A,B) -> PLUS(sum(A),sum(B)) 19.84/21.20 U191#(tt,A,B) -> SUM(A) 19.84/21.20 U191#(tt,A,B) -> SUM(B) 19.84/21.20 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.20 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.20 U22#(tt,V2) -> U23#(isBag(V2)) 19.84/21.20 U22#(tt,V2) -> ISBAG(V2) 19.84/21.20 U31#(tt,V1) -> U32#(isBin(V1)) 19.84/21.20 U31#(tt,V1) -> ISBIN(V1) 19.84/21.20 U41#(tt,V1) -> U42#(isBin(V1)) 19.84/21.20 U41#(tt,V1) -> ISBIN(V1) 19.84/21.20 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.20 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.20 U52#(tt,V2) -> U53#(isBin(V2)) 19.84/21.20 U52#(tt,V2) -> ISBIN(V2) 19.84/21.20 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.20 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.20 U62#(tt,V2) -> U63#(isBin(V2)) 19.84/21.20 U62#(tt,V2) -> ISBIN(V2) 19.84/21.20 U71#(tt,V1) -> U72#(isBag(V1)) 19.84/21.20 U71#(tt,V1) -> ISBAG(V1) 19.84/21.20 U81#(tt,V1) -> U82#(isBag(V1)) 19.84/21.20 U81#(tt,V1) -> ISBAG(V1) 19.84/21.20 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.20 ISBAG(union(V1,V2)) -> AND(isBagKind(V1),isBagKind(V2)) 19.84/21.20 ISBAG(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.20 ISBAG(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.20 ISBAG(singl(V1)) -> U11#(isBinKind(V1),V1) 19.84/21.20 ISBAG(singl(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> AND(isBagKind(V1),isBagKind(V2)) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.20 ISBAGKIND(singl(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.20 ISBIN(0(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 ISBIN(mult(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBIN(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 ISBIN(plus(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBIN(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBIN(prod(V1)) -> U71#(isBagKind(V1),V1) 19.84/21.20 ISBIN(prod(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBIN(sum(V1)) -> U81#(isBagKind(V1),V1) 19.84/21.20 ISBIN(sum(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.20 ISBIN(1(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(0(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBINKIND(prod(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBINKIND(sum(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBINKIND(1(V1)) -> ISBINKIND(V1) 19.84/21.20 MULT(0(X),Y) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(0(X),Y) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(0(X),Y) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(0(X),Y) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(0(X),Y) -> ISBIN(X) 19.84/21.20 MULT(0(X),Y) -> ISBIN(Y) 19.84/21.20 MULT(0(X),Y) -> ISBINKIND(X) 19.84/21.20 MULT(0(X),Y) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBIN(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBIN(Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 MULT(mult(z,X),x6) -> U91#(and(isBin(X),isBinKind(X))) 19.84/21.20 MULT(mult(z,X),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(z,X),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(z,X),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.84/21.20 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(1(X),Y) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(1(X),Y) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(1(X),Y) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(1(X),Y) -> ISBIN(X) 19.84/21.20 MULT(1(X),Y) -> ISBIN(Y) 19.84/21.20 MULT(1(X),Y) -> ISBINKIND(X) 19.84/21.20 MULT(1(X),Y) -> ISBINKIND(Y) 19.84/21.20 MULT(z,X) -> U91#(and(isBin(X),isBinKind(X))) 19.84/21.20 MULT(z,X) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(z,X) -> ISBIN(X) 19.84/21.20 MULT(z,X) -> ISBINKIND(X) 19.84/21.20 PLUS(0(X),0(Y)) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(0(X),0(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(0(X),0(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(0(X),0(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(0(X),0(Y)) -> ISBIN(X) 19.84/21.20 PLUS(0(X),0(Y)) -> ISBIN(Y) 19.84/21.20 PLUS(0(X),0(Y)) -> ISBINKIND(X) 19.84/21.20 PLUS(0(X),0(Y)) -> ISBINKIND(Y) 19.84/21.20 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(0(X),1(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(0(X),1(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(0(X),1(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(0(X),1(Y)) -> ISBIN(X) 19.84/21.20 PLUS(0(X),1(Y)) -> ISBIN(Y) 19.84/21.20 PLUS(0(X),1(Y)) -> ISBINKIND(X) 19.84/21.20 PLUS(0(X),1(Y)) -> ISBINKIND(Y) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> ISBIN(X) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> ISBIN(Y) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> ISBINKIND(X) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> ISBINKIND(Y) 19.84/21.20 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> ISBIN(X) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> ISBIN(Y) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> ISBINKIND(X) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> ISBINKIND(Y) 19.84/21.20 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> ISBIN(X) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> ISBIN(Y) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> ISBINKIND(X) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> ISBINKIND(Y) 19.84/21.20 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 PLUS(plus(z,X),x6) -> U121#(and(isBin(X),isBinKind(X)),X) 19.84/21.20 PLUS(plus(z,X),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(plus(z,X),x6) -> ISBIN(X) 19.84/21.20 PLUS(plus(z,X),x6) -> ISBINKIND(X) 19.84/21.20 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.84/21.20 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 PLUS(1(X),1(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 PLUS(1(X),1(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(1(X),1(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 PLUS(1(X),1(Y)) -> ISBIN(X) 19.84/21.20 PLUS(1(X),1(Y)) -> ISBIN(Y) 19.84/21.20 PLUS(1(X),1(Y)) -> ISBINKIND(X) 19.84/21.20 PLUS(1(X),1(Y)) -> ISBINKIND(Y) 19.84/21.20 PLUS(z,X) -> U121#(and(isBin(X),isBinKind(X)),X) 19.84/21.20 PLUS(z,X) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PLUS(z,X) -> ISBIN(X) 19.84/21.20 PLUS(z,X) -> ISBINKIND(X) 19.84/21.20 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 PROD(union(A,B)) -> AND(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))) 19.84/21.20 PROD(union(A,B)) -> AND(isBag(A),isBagKind(A)) 19.84/21.20 PROD(union(A,B)) -> AND(isBag(B),isBagKind(B)) 19.84/21.20 PROD(union(A,B)) -> ISBAG(A) 19.84/21.20 PROD(union(A,B)) -> ISBAG(B) 19.84/21.20 PROD(union(A,B)) -> ISBAGKIND(A) 19.84/21.20 PROD(union(A,B)) -> ISBAGKIND(B) 19.84/21.20 PROD(singl(X)) -> U161#(and(isBin(X),isBinKind(X)),X) 19.84/21.20 PROD(singl(X)) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 PROD(singl(X)) -> ISBIN(X) 19.84/21.20 PROD(singl(X)) -> ISBINKIND(X) 19.84/21.20 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 SUM(union(A,B)) -> AND(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))) 19.84/21.20 SUM(union(A,B)) -> AND(isBag(A),isBagKind(A)) 19.84/21.20 SUM(union(A,B)) -> AND(isBag(B),isBagKind(B)) 19.84/21.20 SUM(union(A,B)) -> ISBAG(A) 19.84/21.20 SUM(union(A,B)) -> ISBAG(B) 19.84/21.20 SUM(union(A,B)) -> ISBAGKIND(A) 19.84/21.20 SUM(union(A,B)) -> ISBAGKIND(B) 19.84/21.20 SUM(empty) -> 0#(z) 19.84/21.20 SUM(singl(X)) -> U181#(and(isBin(X),isBinKind(X)),X) 19.84/21.20 SUM(singl(X)) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 SUM(singl(X)) -> ISBIN(X) 19.84/21.20 SUM(singl(X)) -> ISBINKIND(X) 19.84/21.20 UNION(union(empty,X),x6) -> UNION(X,x6) 19.84/21.20 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.20 -> EAxioms: 19.84/21.20 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.20 mult(x6,x7) = mult(x7,x6) 19.84/21.20 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.20 plus(x6,x7) = plus(x7,x6) 19.84/21.20 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.20 union(x6,x7) = union(x7,x6) 19.84/21.20 -> Rules: 19.84/21.20 0(z) -> z 19.84/21.20 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.20 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.20 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.20 U12(tt) -> tt 19.84/21.20 U121(tt,X) -> X 19.84/21.20 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.20 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.20 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.20 U161(tt,X) -> X 19.84/21.20 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.20 U181(tt,X) -> X 19.84/21.20 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.20 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.20 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.20 U23(tt) -> tt 19.84/21.20 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.20 U32(tt) -> tt 19.84/21.20 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.20 U42(tt) -> tt 19.84/21.20 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.20 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.20 U53(tt) -> tt 19.84/21.20 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.20 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.20 U63(tt) -> tt 19.84/21.20 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.20 U72(tt) -> tt 19.84/21.20 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.20 U82(tt) -> tt 19.84/21.20 U91(tt) -> z 19.84/21.20 and(tt,X) -> X 19.84/21.20 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.20 isBag(empty) -> tt 19.84/21.20 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.20 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.20 isBagKind(empty) -> tt 19.84/21.20 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.20 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.20 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.20 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.20 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.20 isBin(z) -> tt 19.84/21.20 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.20 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.20 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.20 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.20 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.20 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.20 isBinKind(z) -> tt 19.84/21.20 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.20 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.20 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 prod(empty) -> 1(z) 19.84/21.20 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.20 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.20 sum(empty) -> 0(z) 19.84/21.20 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.20 union(empty,X) -> X 19.84/21.20 union(X,empty) -> X 19.84/21.20 -> SRules: 19.84/21.20 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.84/21.20 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.84/21.20 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.84/21.20 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.84/21.20 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.20 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.20 19.84/21.20 Problem 1: 19.84/21.20 19.84/21.20 SCC Processor: 19.84/21.20 -> FAxioms: 19.84/21.20 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.84/21.20 MULT(x6,x7) = MULT(x7,x6) 19.84/21.20 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.84/21.20 PLUS(x6,x7) = PLUS(x7,x6) 19.84/21.20 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.20 UNION(x6,x7) = UNION(x7,x6) 19.84/21.20 -> Pairs: 19.84/21.20 U101#(tt,X,Y) -> 0#(mult(X,Y)) 19.84/21.20 U101#(tt,X,Y) -> MULT(X,Y) 19.84/21.20 U11#(tt,V1) -> U12#(isBin(V1)) 19.84/21.20 U11#(tt,V1) -> ISBIN(V1) 19.84/21.20 U111#(tt,X,Y) -> 0#(mult(X,Y)) 19.84/21.20 U111#(tt,X,Y) -> MULT(X,Y) 19.84/21.20 U111#(tt,X,Y) -> PLUS(0(mult(X,Y)),Y) 19.84/21.20 U131#(tt,X,Y) -> 0#(plus(X,Y)) 19.84/21.20 U131#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U141#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U151#(tt,X,Y) -> 0#(plus(plus(X,Y),1(z))) 19.84/21.20 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.84/21.20 U151#(tt,X,Y) -> PLUS(X,Y) 19.84/21.20 U171#(tt,A,B) -> MULT(prod(A),prod(B)) 19.84/21.20 U171#(tt,A,B) -> PROD(A) 19.84/21.20 U171#(tt,A,B) -> PROD(B) 19.84/21.20 U191#(tt,A,B) -> PLUS(sum(A),sum(B)) 19.84/21.20 U191#(tt,A,B) -> SUM(A) 19.84/21.20 U191#(tt,A,B) -> SUM(B) 19.84/21.20 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.20 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.20 U22#(tt,V2) -> U23#(isBag(V2)) 19.84/21.20 U22#(tt,V2) -> ISBAG(V2) 19.84/21.20 U31#(tt,V1) -> U32#(isBin(V1)) 19.84/21.20 U31#(tt,V1) -> ISBIN(V1) 19.84/21.20 U41#(tt,V1) -> U42#(isBin(V1)) 19.84/21.20 U41#(tt,V1) -> ISBIN(V1) 19.84/21.20 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.20 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.20 U52#(tt,V2) -> U53#(isBin(V2)) 19.84/21.20 U52#(tt,V2) -> ISBIN(V2) 19.84/21.20 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.20 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.20 U62#(tt,V2) -> U63#(isBin(V2)) 19.84/21.20 U62#(tt,V2) -> ISBIN(V2) 19.84/21.20 U71#(tt,V1) -> U72#(isBag(V1)) 19.84/21.20 U71#(tt,V1) -> ISBAG(V1) 19.84/21.20 U81#(tt,V1) -> U82#(isBag(V1)) 19.84/21.20 U81#(tt,V1) -> ISBAG(V1) 19.84/21.20 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.20 ISBAG(union(V1,V2)) -> AND(isBagKind(V1),isBagKind(V2)) 19.84/21.20 ISBAG(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.20 ISBAG(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.20 ISBAG(singl(V1)) -> U11#(isBinKind(V1),V1) 19.84/21.20 ISBAG(singl(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> AND(isBagKind(V1),isBagKind(V2)) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.20 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.20 ISBAGKIND(singl(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.20 ISBIN(0(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 ISBIN(mult(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBIN(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.20 ISBIN(plus(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBIN(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBIN(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBIN(prod(V1)) -> U71#(isBagKind(V1),V1) 19.84/21.20 ISBIN(prod(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBIN(sum(V1)) -> U81#(isBagKind(V1),V1) 19.84/21.20 ISBIN(sum(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.20 ISBIN(1(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(0(V1)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> AND(isBinKind(V1),isBinKind(V2)) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.20 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.20 ISBINKIND(prod(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBINKIND(sum(V1)) -> ISBAGKIND(V1) 19.84/21.20 ISBINKIND(1(V1)) -> ISBINKIND(V1) 19.84/21.20 MULT(0(X),Y) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(0(X),Y) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(0(X),Y) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(0(X),Y) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(0(X),Y) -> ISBIN(X) 19.84/21.20 MULT(0(X),Y) -> ISBIN(Y) 19.84/21.20 MULT(0(X),Y) -> ISBINKIND(X) 19.84/21.20 MULT(0(X),Y) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(0(X),Y),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBIN(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(0(X),Y),x6) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(1(X),Y),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBIN(Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(1(X),Y),x6) -> ISBINKIND(Y) 19.84/21.20 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.20 MULT(mult(z,X),x6) -> U91#(and(isBin(X),isBinKind(X))) 19.84/21.20 MULT(mult(z,X),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(mult(z,X),x6) -> ISBIN(X) 19.84/21.20 MULT(mult(z,X),x6) -> ISBINKIND(X) 19.84/21.20 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.84/21.20 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.20 MULT(1(X),Y) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.20 MULT(1(X),Y) -> AND(isBin(X),isBinKind(X)) 19.84/21.20 MULT(1(X),Y) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.20 MULT(1(X),Y) -> ISBIN(X) 19.84/21.20 MULT(1(X),Y) -> ISBIN(Y) 19.84/21.20 MULT(1(X),Y) -> ISBINKIND(X) 19.84/21.20 MULT(1(X),Y) -> ISBINKIND(Y) 19.84/21.20 MULT(z,X) -> U91#(and(isBin(X),isBinKind(X))) 19.84/21.20 MULT(z,X) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 MULT(z,X) -> ISBIN(X) 19.84/21.21 MULT(z,X) -> ISBINKIND(X) 19.84/21.21 PLUS(0(X),0(Y)) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(0(X),0(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(0(X),0(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(0(X),0(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(0(X),0(Y)) -> ISBIN(X) 19.84/21.21 PLUS(0(X),0(Y)) -> ISBIN(Y) 19.84/21.21 PLUS(0(X),0(Y)) -> ISBINKIND(X) 19.84/21.21 PLUS(0(X),0(Y)) -> ISBINKIND(Y) 19.84/21.21 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(0(X),1(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(0(X),1(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(0(X),1(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(0(X),1(Y)) -> ISBIN(X) 19.84/21.21 PLUS(0(X),1(Y)) -> ISBIN(Y) 19.84/21.21 PLUS(0(X),1(Y)) -> ISBINKIND(X) 19.84/21.21 PLUS(0(X),1(Y)) -> ISBINKIND(Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> ISBIN(X) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> ISBIN(Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> ISBINKIND(X) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> ISBINKIND(Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> ISBIN(X) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> ISBIN(Y) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> ISBINKIND(X) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> ISBINKIND(Y) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> ISBIN(X) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> ISBIN(Y) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> ISBINKIND(X) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> ISBINKIND(Y) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(z,X),x6) -> U121#(and(isBin(X),isBinKind(X)),X) 19.84/21.21 PLUS(plus(z,X),x6) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(plus(z,X),x6) -> ISBIN(X) 19.84/21.21 PLUS(plus(z,X),x6) -> ISBINKIND(X) 19.84/21.21 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.84/21.21 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(1(X),1(Y)) -> AND(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))) 19.84/21.21 PLUS(1(X),1(Y)) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(1(X),1(Y)) -> AND(isBin(Y),isBinKind(Y)) 19.84/21.21 PLUS(1(X),1(Y)) -> ISBIN(X) 19.84/21.21 PLUS(1(X),1(Y)) -> ISBIN(Y) 19.84/21.21 PLUS(1(X),1(Y)) -> ISBINKIND(X) 19.84/21.21 PLUS(1(X),1(Y)) -> ISBINKIND(Y) 19.84/21.21 PLUS(z,X) -> U121#(and(isBin(X),isBinKind(X)),X) 19.84/21.21 PLUS(z,X) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PLUS(z,X) -> ISBIN(X) 19.84/21.21 PLUS(z,X) -> ISBINKIND(X) 19.84/21.21 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 PROD(union(A,B)) -> AND(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))) 19.84/21.21 PROD(union(A,B)) -> AND(isBag(A),isBagKind(A)) 19.84/21.21 PROD(union(A,B)) -> AND(isBag(B),isBagKind(B)) 19.84/21.21 PROD(union(A,B)) -> ISBAG(A) 19.84/21.21 PROD(union(A,B)) -> ISBAG(B) 19.84/21.21 PROD(union(A,B)) -> ISBAGKIND(A) 19.84/21.21 PROD(union(A,B)) -> ISBAGKIND(B) 19.84/21.21 PROD(singl(X)) -> U161#(and(isBin(X),isBinKind(X)),X) 19.84/21.21 PROD(singl(X)) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 PROD(singl(X)) -> ISBIN(X) 19.84/21.21 PROD(singl(X)) -> ISBINKIND(X) 19.84/21.21 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 SUM(union(A,B)) -> AND(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))) 19.84/21.21 SUM(union(A,B)) -> AND(isBag(A),isBagKind(A)) 19.84/21.21 SUM(union(A,B)) -> AND(isBag(B),isBagKind(B)) 19.84/21.21 SUM(union(A,B)) -> ISBAG(A) 19.84/21.21 SUM(union(A,B)) -> ISBAG(B) 19.84/21.21 SUM(union(A,B)) -> ISBAGKIND(A) 19.84/21.21 SUM(union(A,B)) -> ISBAGKIND(B) 19.84/21.21 SUM(empty) -> 0#(z) 19.84/21.21 SUM(singl(X)) -> U181#(and(isBin(X),isBinKind(X)),X) 19.84/21.21 SUM(singl(X)) -> AND(isBin(X),isBinKind(X)) 19.84/21.21 SUM(singl(X)) -> ISBIN(X) 19.84/21.21 SUM(singl(X)) -> ISBINKIND(X) 19.84/21.21 UNION(union(empty,X),x6) -> UNION(X,x6) 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.84/21.21 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.84/21.21 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.84/21.21 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->Strongly Connected Components: 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 UNION(union(empty,X),x6) -> UNION(X,x6) 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) -> UNION(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.21 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.21 ISBAGKIND(singl(V1)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(0(V1)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.21 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.21 ISBINKIND(prod(V1)) -> ISBAGKIND(V1) 19.84/21.21 ISBINKIND(sum(V1)) -> ISBAGKIND(V1) 19.84/21.21 ISBINKIND(1(V1)) -> ISBINKIND(V1) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U11#(tt,V1) -> ISBIN(V1) 19.84/21.21 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.21 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.21 U22#(tt,V2) -> ISBAG(V2) 19.84/21.21 U31#(tt,V1) -> ISBIN(V1) 19.84/21.21 U41#(tt,V1) -> ISBIN(V1) 19.84/21.21 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.21 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U52#(tt,V2) -> ISBIN(V2) 19.84/21.21 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.21 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U62#(tt,V2) -> ISBIN(V2) 19.84/21.21 U71#(tt,V1) -> ISBAG(V1) 19.84/21.21 U81#(tt,V1) -> ISBAG(V1) 19.84/21.21 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 ISBAG(singl(V1)) -> U11#(isBinKind(V1),V1) 19.84/21.21 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.21 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(prod(V1)) -> U71#(isBagKind(V1),V1) 19.84/21.21 ISBIN(sum(V1)) -> U81#(isBagKind(V1),V1) 19.84/21.21 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U131#(tt,X,Y) -> PLUS(X,Y) 19.84/21.21 U141#(tt,X,Y) -> PLUS(X,Y) 19.84/21.21 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.84/21.21 U151#(tt,X,Y) -> PLUS(X,Y) 19.84/21.21 PLUS(0(X),0(Y)) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.84/21.21 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.84/21.21 PLUS(x6,x7) -> PLUS(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.84/21.21 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U191#(tt,A,B) -> SUM(A) 19.84/21.21 U191#(tt,A,B) -> SUM(B) 19.84/21.21 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U101#(tt,X,Y) -> MULT(X,Y) 19.84/21.21 U111#(tt,X,Y) -> MULT(X,Y) 19.84/21.21 MULT(0(X),Y) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 MULT(mult(0(X),Y),x6) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.84/21.21 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.84/21.21 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 MULT(mult(x6,x7),x8) -> MULT(x6,mult(x7,x8)) 19.84/21.21 MULT(x6,x7) -> MULT(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.84/21.21 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U171#(tt,A,B) -> PROD(A) 19.84/21.21 U171#(tt,A,B) -> PROD(B) 19.84/21.21 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 19.84/21.21 19.84/21.21 The problem is decomposed in 7 subproblems. 19.84/21.21 19.84/21.21 Problem 1.1: 19.84/21.21 19.84/21.21 Reduction Pairs Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) = UNION(x7,x6) 19.84/21.21 -> Pairs: 19.84/21.21 UNION(union(empty,X),x6) -> UNION(X,x6) 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Usable Equations: 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> Usable Rules: 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->Interpretation type: 19.84/21.21 Linear 19.84/21.21 ->Coefficients: 19.84/21.21 Natural Numbers 19.84/21.21 ->Dimension: 19.84/21.21 1 19.84/21.21 ->Bound: 19.84/21.21 2 19.84/21.21 ->Interpretation: 19.84/21.21 19.84/21.21 [0](X) = 0 19.84/21.21 [U101](X1,X2,X3) = 0 19.84/21.21 [U11](X1,X2) = 0 19.84/21.21 [U111](X1,X2,X3) = 0 19.84/21.21 [U12](X) = 0 19.84/21.21 [U121](X1,X2) = 0 19.84/21.21 [U131](X1,X2,X3) = 0 19.84/21.21 [U141](X1,X2,X3) = 0 19.84/21.21 [U151](X1,X2,X3) = 0 19.84/21.21 [U161](X1,X2) = 0 19.84/21.21 [U171](X1,X2,X3) = 0 19.84/21.21 [U181](X1,X2) = 0 19.84/21.21 [U191](X1,X2,X3) = 0 19.84/21.21 [U21](X1,X2,X3) = 0 19.84/21.21 [U22](X1,X2) = 0 19.84/21.21 [U23](X) = 0 19.84/21.21 [U31](X1,X2) = 0 19.84/21.21 [U32](X) = 0 19.84/21.21 [U41](X1,X2) = 0 19.84/21.21 [U42](X) = 0 19.84/21.21 [U51](X1,X2,X3) = 0 19.84/21.21 [U52](X1,X2) = 0 19.84/21.21 [U53](X) = 0 19.84/21.21 [U61](X1,X2,X3) = 0 19.84/21.21 [U62](X1,X2) = 0 19.84/21.21 [U63](X) = 0 19.84/21.21 [U71](X1,X2) = 0 19.84/21.21 [U72](X) = 0 19.84/21.21 [U81](X1,X2) = 0 19.84/21.21 [U82](X) = 0 19.84/21.21 [U91](X) = 0 19.84/21.21 [and](X1,X2) = 0 19.84/21.21 [isBag](X) = 0 19.84/21.21 [isBagKind](X) = 0 19.84/21.21 [isBin](X) = 0 19.84/21.21 [isBinKind](X) = 0 19.84/21.21 [mult](X1,X2) = 0 19.84/21.21 [plus](X1,X2) = 0 19.84/21.21 [prod](X) = 0 19.84/21.21 [sum](X) = 0 19.84/21.21 [union](X1,X2) = X1 + X2 19.84/21.21 [1](X) = 0 19.84/21.21 [empty] = 2 19.84/21.21 [singl](X) = 0 19.84/21.21 [tt] = 0 19.84/21.21 [z] = 0 19.84/21.21 [0#](X) = 0 19.84/21.21 [U101#](X1,X2,X3) = 0 19.84/21.21 [U11#](X1,X2) = 0 19.84/21.21 [U111#](X1,X2,X3) = 0 19.84/21.21 [U12#](X) = 0 19.84/21.21 [U121#](X1,X2) = 0 19.84/21.21 [U131#](X1,X2,X3) = 0 19.84/21.21 [U141#](X1,X2,X3) = 0 19.84/21.21 [U151#](X1,X2,X3) = 0 19.84/21.21 [U161#](X1,X2) = 0 19.84/21.21 [U171#](X1,X2,X3) = 0 19.84/21.21 [U181#](X1,X2) = 0 19.84/21.21 [U191#](X1,X2,X3) = 0 19.84/21.21 [U21#](X1,X2,X3) = 0 19.84/21.21 [U22#](X1,X2) = 0 19.84/21.21 [U23#](X) = 0 19.84/21.21 [U31#](X1,X2) = 0 19.84/21.21 [U32#](X) = 0 19.84/21.21 [U41#](X1,X2) = 0 19.84/21.21 [U42#](X) = 0 19.84/21.21 [U51#](X1,X2,X3) = 0 19.84/21.21 [U52#](X1,X2) = 0 19.84/21.21 [U53#](X) = 0 19.84/21.21 [U61#](X1,X2,X3) = 0 19.84/21.21 [U62#](X1,X2) = 0 19.84/21.21 [U63#](X) = 0 19.84/21.21 [U71#](X1,X2) = 0 19.84/21.21 [U72#](X) = 0 19.84/21.21 [U81#](X1,X2) = 0 19.84/21.21 [U82#](X) = 0 19.84/21.21 [U91#](X) = 0 19.84/21.21 [AND](X1,X2) = 0 19.84/21.21 [ISBAG](X) = 0 19.84/21.21 [ISBAGKIND](X) = 0 19.84/21.21 [ISBIN](X) = 0 19.84/21.21 [ISBINKIND](X) = 0 19.84/21.21 [MULT](X1,X2) = 0 19.84/21.21 [PLUS](X1,X2) = 0 19.84/21.21 [PROD](X) = 0 19.84/21.21 [SUM](X) = 0 19.84/21.21 [UNION](X1,X2) = 2.X1 + 2.X2 19.84/21.21 19.84/21.21 Problem 1.1: 19.84/21.21 19.84/21.21 SCC Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) = UNION(x7,x6) 19.84/21.21 -> Pairs: 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->Strongly Connected Components: 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) -> UNION(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 19.84/21.21 Problem 1.1: 19.84/21.21 19.84/21.21 Reduction Pairs Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) = UNION(x7,x6) 19.84/21.21 -> Pairs: 19.84/21.21 UNION(union(X,empty),x6) -> UNION(X,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Usable Equations: 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> Usable Rules: 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->Interpretation type: 19.84/21.21 Linear 19.84/21.21 ->Coefficients: 19.84/21.21 Natural Numbers 19.84/21.21 ->Dimension: 19.84/21.21 1 19.84/21.21 ->Bound: 19.84/21.21 2 19.84/21.21 ->Interpretation: 19.84/21.21 19.84/21.21 [0](X) = 0 19.84/21.21 [U101](X1,X2,X3) = 0 19.84/21.21 [U11](X1,X2) = 0 19.84/21.21 [U111](X1,X2,X3) = 0 19.84/21.21 [U12](X) = 0 19.84/21.21 [U121](X1,X2) = 0 19.84/21.21 [U131](X1,X2,X3) = 0 19.84/21.21 [U141](X1,X2,X3) = 0 19.84/21.21 [U151](X1,X2,X3) = 0 19.84/21.21 [U161](X1,X2) = 0 19.84/21.21 [U171](X1,X2,X3) = 0 19.84/21.21 [U181](X1,X2) = 0 19.84/21.21 [U191](X1,X2,X3) = 0 19.84/21.21 [U21](X1,X2,X3) = 0 19.84/21.21 [U22](X1,X2) = 0 19.84/21.21 [U23](X) = 0 19.84/21.21 [U31](X1,X2) = 0 19.84/21.21 [U32](X) = 0 19.84/21.21 [U41](X1,X2) = 0 19.84/21.21 [U42](X) = 0 19.84/21.21 [U51](X1,X2,X3) = 0 19.84/21.21 [U52](X1,X2) = 0 19.84/21.21 [U53](X) = 0 19.84/21.21 [U61](X1,X2,X3) = 0 19.84/21.21 [U62](X1,X2) = 0 19.84/21.21 [U63](X) = 0 19.84/21.21 [U71](X1,X2) = 0 19.84/21.21 [U72](X) = 0 19.84/21.21 [U81](X1,X2) = 0 19.84/21.21 [U82](X) = 0 19.84/21.21 [U91](X) = 0 19.84/21.21 [and](X1,X2) = 0 19.84/21.21 [isBag](X) = 0 19.84/21.21 [isBagKind](X) = 0 19.84/21.21 [isBin](X) = 0 19.84/21.21 [isBinKind](X) = 0 19.84/21.21 [mult](X1,X2) = 0 19.84/21.21 [plus](X1,X2) = 0 19.84/21.21 [prod](X) = 0 19.84/21.21 [sum](X) = 0 19.84/21.21 [union](X1,X2) = X1 + X2 + 2 19.84/21.21 [1](X) = 0 19.84/21.21 [empty] = 2 19.84/21.21 [singl](X) = 0 19.84/21.21 [tt] = 0 19.84/21.21 [z] = 0 19.84/21.21 [0#](X) = 0 19.84/21.21 [U101#](X1,X2,X3) = 0 19.84/21.21 [U11#](X1,X2) = 0 19.84/21.21 [U111#](X1,X2,X3) = 0 19.84/21.21 [U12#](X) = 0 19.84/21.21 [U121#](X1,X2) = 0 19.84/21.21 [U131#](X1,X2,X3) = 0 19.84/21.21 [U141#](X1,X2,X3) = 0 19.84/21.21 [U151#](X1,X2,X3) = 0 19.84/21.21 [U161#](X1,X2) = 0 19.84/21.21 [U171#](X1,X2,X3) = 0 19.84/21.21 [U181#](X1,X2) = 0 19.84/21.21 [U191#](X1,X2,X3) = 0 19.84/21.21 [U21#](X1,X2,X3) = 0 19.84/21.21 [U22#](X1,X2) = 0 19.84/21.21 [U23#](X) = 0 19.84/21.21 [U31#](X1,X2) = 0 19.84/21.21 [U32#](X) = 0 19.84/21.21 [U41#](X1,X2) = 0 19.84/21.21 [U42#](X) = 0 19.84/21.21 [U51#](X1,X2,X3) = 0 19.84/21.21 [U52#](X1,X2) = 0 19.84/21.21 [U53#](X) = 0 19.84/21.21 [U61#](X1,X2,X3) = 0 19.84/21.21 [U62#](X1,X2) = 0 19.84/21.21 [U63#](X) = 0 19.84/21.21 [U71#](X1,X2) = 0 19.84/21.21 [U72#](X) = 0 19.84/21.21 [U81#](X1,X2) = 0 19.84/21.21 [U82#](X) = 0 19.84/21.21 [U91#](X) = 0 19.84/21.21 [AND](X1,X2) = 0 19.84/21.21 [ISBAG](X) = 0 19.84/21.21 [ISBAGKIND](X) = 0 19.84/21.21 [ISBIN](X) = 0 19.84/21.21 [ISBINKIND](X) = 0 19.84/21.21 [MULT](X1,X2) = 0 19.84/21.21 [PLUS](X1,X2) = 0 19.84/21.21 [PROD](X) = 0 19.84/21.21 [SUM](X) = 0 19.84/21.21 [UNION](X1,X2) = 2.X1 + 2.X2 19.84/21.21 19.84/21.21 Problem 1.1: 19.84/21.21 19.84/21.21 SCC Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 UNION(union(x6,x7),x8) = UNION(x6,union(x7,x8)) 19.84/21.21 UNION(x6,x7) = UNION(x7,x6) 19.84/21.21 -> Pairs: 19.84/21.21 Empty 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 UNION(union(x6,x7),x8) -> UNION(x6,x7) 19.84/21.21 UNION(x6,union(x7,x8)) -> UNION(x7,x8) 19.84/21.21 ->Strongly Connected Components: 19.84/21.21 There is no strongly connected component 19.84/21.21 19.84/21.21 The problem is finite. 19.84/21.21 19.84/21.21 Problem 1.2: 19.84/21.21 19.84/21.21 Subterm Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 Empty 19.84/21.21 -> Pairs: 19.84/21.21 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V1) 19.84/21.21 ISBAGKIND(union(V1,V2)) -> ISBAGKIND(V2) 19.84/21.21 ISBAGKIND(singl(V1)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(0(V1)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(mult(V1,V2)) -> ISBINKIND(V2) 19.84/21.21 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V1) 19.84/21.21 ISBINKIND(plus(V1,V2)) -> ISBINKIND(V2) 19.84/21.21 ISBINKIND(prod(V1)) -> ISBAGKIND(V1) 19.84/21.21 ISBINKIND(sum(V1)) -> ISBAGKIND(V1) 19.84/21.21 ISBINKIND(1(V1)) -> ISBINKIND(V1) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->Projection: 19.84/21.21 pi(ISBAGKIND) = [1] 19.84/21.21 pi(ISBINKIND) = [1] 19.84/21.21 19.84/21.21 Problem 1.2: 19.84/21.21 19.84/21.21 SCC Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 Empty 19.84/21.21 -> Pairs: 19.84/21.21 Empty 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->Strongly Connected Components: 19.84/21.21 There is no strongly connected component 19.84/21.21 19.84/21.21 The problem is finite. 19.84/21.21 19.84/21.21 Problem 1.3: 19.84/21.21 19.84/21.21 Reduction Pairs Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 Empty 19.84/21.21 -> Pairs: 19.84/21.21 U11#(tt,V1) -> ISBIN(V1) 19.84/21.21 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.21 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.21 U22#(tt,V2) -> ISBAG(V2) 19.84/21.21 U31#(tt,V1) -> ISBIN(V1) 19.84/21.21 U41#(tt,V1) -> ISBIN(V1) 19.84/21.21 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.21 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U52#(tt,V2) -> ISBIN(V2) 19.84/21.21 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.21 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U62#(tt,V2) -> ISBIN(V2) 19.84/21.21 U71#(tt,V1) -> ISBAG(V1) 19.84/21.21 U81#(tt,V1) -> ISBAG(V1) 19.84/21.21 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 ISBAG(singl(V1)) -> U11#(isBinKind(V1),V1) 19.84/21.21 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.21 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(prod(V1)) -> U71#(isBagKind(V1),V1) 19.84/21.21 ISBIN(sum(V1)) -> U81#(isBagKind(V1),V1) 19.84/21.21 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Usable Equations: 19.84/21.21 Empty 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> Usable Rules: 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->Interpretation type: 19.84/21.21 Linear 19.84/21.21 ->Coefficients: 19.84/21.21 Natural Numbers 19.84/21.21 ->Dimension: 19.84/21.21 1 19.84/21.21 ->Bound: 19.84/21.21 2 19.84/21.21 ->Interpretation: 19.84/21.21 19.84/21.21 [0](X) = 2.X 19.84/21.21 [U101](X1,X2,X3) = 0 19.84/21.21 [U11](X1,X2) = 2.X1 + 2.X2 19.84/21.21 [U111](X1,X2,X3) = 0 19.84/21.21 [U12](X) = X + 2 19.84/21.21 [U121](X1,X2) = 0 19.84/21.21 [U131](X1,X2,X3) = 0 19.84/21.21 [U141](X1,X2,X3) = 0 19.84/21.21 [U151](X1,X2,X3) = 0 19.84/21.21 [U161](X1,X2) = 0 19.84/21.21 [U171](X1,X2,X3) = 0 19.84/21.21 [U181](X1,X2) = 0 19.84/21.21 [U191](X1,X2,X3) = 0 19.84/21.21 [U21](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U22](X1,X2) = 2.X1 + X2 19.84/21.21 [U23](X) = X + 1 19.84/21.21 [U31](X1,X2) = 2 19.84/21.21 [U32](X) = 2 19.84/21.21 [U41](X1,X2) = X1 + 2.X2 + 2 19.84/21.21 [U42](X) = X + 2 19.84/21.21 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U52](X1,X2) = X1 + 2.X2 + 2 19.84/21.21 [U53](X) = X + 2 19.84/21.21 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U62](X1,X2) = X1 + 2.X2 + 2 19.84/21.21 [U63](X) = X + 1 19.84/21.21 [U71](X1,X2) = X1 + X2 + 2 19.84/21.21 [U72](X) = X + 2 19.84/21.21 [U81](X1,X2) = 2.X1 + 2.X2 19.84/21.21 [U82](X) = X + 2 19.84/21.21 [U91](X) = 0 19.84/21.21 [and](X1,X2) = X2 19.84/21.21 [isBag](X) = X + 2 19.84/21.21 [isBagKind](X) = 2 19.84/21.21 [isBin](X) = 2.X + 2 19.84/21.21 [isBinKind](X) = 2 19.84/21.21 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.21 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.21 [prod](X) = 2.X + 1 19.84/21.21 [sum](X) = 2.X + 2 19.84/21.21 [union](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.21 [1](X) = 2.X + 2 19.84/21.21 [empty] = 1 19.84/21.21 [singl](X) = 2.X + 2 19.84/21.21 [tt] = 2 19.84/21.21 [z] = 0 19.84/21.21 [0#](X) = 0 19.84/21.21 [U101#](X1,X2,X3) = 0 19.84/21.21 [U11#](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.21 [U111#](X1,X2,X3) = 0 19.84/21.21 [U12#](X) = 0 19.84/21.21 [U121#](X1,X2) = 0 19.84/21.21 [U131#](X1,X2,X3) = 0 19.84/21.21 [U141#](X1,X2,X3) = 0 19.84/21.21 [U151#](X1,X2,X3) = 0 19.84/21.21 [U161#](X1,X2) = 0 19.84/21.21 [U171#](X1,X2,X3) = 0 19.84/21.21 [U181#](X1,X2) = 0 19.84/21.21 [U191#](X1,X2,X3) = 0 19.84/21.21 [U21#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U22#](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.21 [U23#](X) = 0 19.84/21.21 [U31#](X1,X2) = 2.X2 + 2 19.84/21.21 [U32#](X) = 0 19.84/21.21 [U41#](X1,X2) = 2.X2 + 2 19.84/21.21 [U42#](X) = 0 19.84/21.21 [U51#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U52#](X1,X2) = X1 + 2.X2 19.84/21.21 [U53#](X) = 0 19.84/21.21 [U61#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.84/21.21 [U62#](X1,X2) = X1 + 2.X2 + 2 19.84/21.21 [U63#](X) = 0 19.84/21.21 [U71#](X1,X2) = 2.X2 + 2 19.84/21.21 [U72#](X) = 0 19.84/21.21 [U81#](X1,X2) = 2.X2 + 2 19.84/21.21 [U82#](X) = 0 19.84/21.21 [U91#](X) = 0 19.84/21.21 [AND](X1,X2) = 0 19.84/21.21 [ISBAG](X) = 2.X + 2 19.84/21.21 [ISBAGKIND](X) = 0 19.84/21.21 [ISBIN](X) = 2.X + 2 19.84/21.21 [ISBINKIND](X) = 0 19.84/21.21 [MULT](X1,X2) = 0 19.84/21.21 [PLUS](X1,X2) = 0 19.84/21.21 [PROD](X) = 0 19.84/21.21 [SUM](X) = 0 19.84/21.21 [UNION](X1,X2) = 0 19.84/21.21 19.84/21.21 Problem 1.3: 19.84/21.21 19.84/21.21 SCC Processor: 19.84/21.21 -> FAxioms: 19.84/21.21 Empty 19.84/21.21 -> Pairs: 19.84/21.21 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.21 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.21 U22#(tt,V2) -> ISBAG(V2) 19.84/21.21 U31#(tt,V1) -> ISBIN(V1) 19.84/21.21 U41#(tt,V1) -> ISBIN(V1) 19.84/21.21 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.21 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U52#(tt,V2) -> ISBIN(V2) 19.84/21.21 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.21 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.21 U62#(tt,V2) -> ISBIN(V2) 19.84/21.21 U71#(tt,V1) -> ISBAG(V1) 19.84/21.21 U81#(tt,V1) -> ISBAG(V1) 19.84/21.21 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 ISBAG(singl(V1)) -> U11#(isBinKind(V1),V1) 19.84/21.21 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.21 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 ISBIN(prod(V1)) -> U71#(isBagKind(V1),V1) 19.84/21.21 ISBIN(sum(V1)) -> U81#(isBagKind(V1),V1) 19.84/21.21 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 -> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.21 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.21 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.21 U53(tt) -> tt 19.84/21.21 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.21 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.21 U63(tt) -> tt 19.84/21.21 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.21 U72(tt) -> tt 19.84/21.21 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.21 U82(tt) -> tt 19.84/21.21 U91(tt) -> z 19.84/21.21 and(tt,X) -> X 19.84/21.21 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 isBag(empty) -> tt 19.84/21.21 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.21 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.21 isBagKind(empty) -> tt 19.84/21.21 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.21 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.21 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.21 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.21 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.21 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.21 isBin(z) -> tt 19.84/21.21 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.21 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.21 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.21 isBinKind(z) -> tt 19.84/21.21 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.21 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.21 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.21 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 prod(empty) -> 1(z) 19.84/21.21 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.21 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.21 sum(empty) -> 0(z) 19.84/21.21 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.21 union(empty,X) -> X 19.84/21.21 union(X,empty) -> X 19.84/21.21 -> SRules: 19.84/21.21 Empty 19.84/21.21 ->Strongly Connected Components: 19.84/21.21 ->->Cycle: 19.84/21.21 ->->-> Pairs: 19.84/21.21 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.21 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.21 U22#(tt,V2) -> ISBAG(V2) 19.84/21.21 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.21 -> FAxioms: 19.84/21.21 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) -> mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) -> plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) -> union(x7,x6) 19.84/21.21 -> EAxioms: 19.84/21.21 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.21 mult(x6,x7) = mult(x7,x6) 19.84/21.21 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.21 plus(x6,x7) = plus(x7,x6) 19.84/21.21 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.21 union(x6,x7) = union(x7,x6) 19.84/21.21 ->->-> Rules: 19.84/21.21 0(z) -> z 19.84/21.21 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.21 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.21 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.21 U12(tt) -> tt 19.84/21.21 U121(tt,X) -> X 19.84/21.21 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.21 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.21 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.21 U161(tt,X) -> X 19.84/21.21 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.21 U181(tt,X) -> X 19.84/21.21 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.21 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.21 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.21 U23(tt) -> tt 19.84/21.21 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.21 U32(tt) -> tt 19.84/21.21 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.21 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->->Cycle: 19.84/21.22 ->->-> Pairs: 19.84/21.22 U31#(tt,V1) -> ISBIN(V1) 19.84/21.22 U41#(tt,V1) -> ISBIN(V1) 19.84/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.22 U52#(tt,V2) -> ISBIN(V2) 19.84/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.22 U62#(tt,V2) -> ISBIN(V2) 19.84/21.22 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.22 -> FAxioms: 19.84/21.22 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) -> mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) -> plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) -> union(x7,x6) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 ->->-> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 19.84/21.22 19.84/21.22 The problem is decomposed in 2 subproblems. 19.84/21.22 19.84/21.22 Problem 1.3.1: 19.84/21.22 19.84/21.22 Reduction Pairs Processor: 19.84/21.22 -> FAxioms: 19.84/21.22 Empty 19.84/21.22 -> Pairs: 19.84/21.22 U21#(tt,V1,V2) -> U22#(isBag(V1),V2) 19.84/21.22 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.22 U22#(tt,V2) -> ISBAG(V2) 19.84/21.22 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 -> Usable Equations: 19.84/21.22 Empty 19.84/21.22 -> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> Usable Rules: 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->Interpretation type: 19.84/21.22 Linear 19.84/21.22 ->Coefficients: 19.84/21.22 Natural Numbers 19.84/21.22 ->Dimension: 19.84/21.22 1 19.84/21.22 ->Bound: 19.84/21.22 2 19.84/21.22 ->Interpretation: 19.84/21.22 19.84/21.22 [0](X) = X + 2 19.84/21.22 [U101](X1,X2,X3) = 0 19.84/21.22 [U11](X1,X2) = X1 + 2.X2 + 1 19.84/21.22 [U111](X1,X2,X3) = 0 19.84/21.22 [U12](X) = X 19.84/21.22 [U121](X1,X2) = 0 19.84/21.22 [U131](X1,X2,X3) = 0 19.84/21.22 [U141](X1,X2,X3) = 0 19.84/21.22 [U151](X1,X2,X3) = 0 19.84/21.22 [U161](X1,X2) = 0 19.84/21.22 [U171](X1,X2,X3) = 0 19.84/21.22 [U181](X1,X2) = 0 19.84/21.22 [U191](X1,X2,X3) = 0 19.84/21.22 [U21](X1,X2,X3) = X1 + 2.X2 + X3 + 2 19.84/21.22 [U22](X1,X2) = X1 + 2 19.84/21.22 [U23](X) = 2 19.84/21.22 [U31](X1,X2) = X1 + 2 19.84/21.22 [U32](X) = 2 19.84/21.22 [U41](X1,X2) = X1 + 2.X2 + 2 19.84/21.22 [U42](X) = X 19.84/21.22 [U51](X1,X2,X3) = 2.X1 + 2 19.84/21.22 [U52](X1,X2) = 2 19.84/21.22 [U53](X) = 2 19.84/21.22 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2 19.84/21.22 [U62](X1,X2) = X1 + 2 19.84/21.22 [U63](X) = 2 19.84/21.22 [U71](X1,X2) = X1 + 2.X2 + 2 19.84/21.22 [U72](X) = X + 1 19.84/21.22 [U81](X1,X2) = 2.X2 + 2 19.84/21.22 [U82](X) = X 19.84/21.22 [U91](X) = 0 19.84/21.22 [and](X1,X2) = X2 19.84/21.22 [isBag](X) = 2.X + 2 19.84/21.22 [isBagKind](X) = 2.X + 2 19.84/21.22 [isBin](X) = 2.X + 2 19.84/21.22 [isBinKind](X) = 2.X + 2 19.84/21.22 [mult](X1,X2) = 2.X2 + 2 19.84/21.22 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.22 [prod](X) = 2.X + 2 19.84/21.22 [sum](X) = 2.X 19.84/21.22 [union](X1,X2) = X1 + 2.X2 + 2 19.84/21.22 [1](X) = 2.X + 2 19.84/21.22 [empty] = 0 19.84/21.22 [singl](X) = 2.X + 2 19.84/21.22 [tt] = 2 19.84/21.22 [z] = 1 19.84/21.22 [0#](X) = 0 19.84/21.22 [U101#](X1,X2,X3) = 0 19.84/21.22 [U11#](X1,X2) = 0 19.84/21.22 [U111#](X1,X2,X3) = 0 19.84/21.22 [U12#](X) = 0 19.84/21.22 [U121#](X1,X2) = 0 19.84/21.22 [U131#](X1,X2,X3) = 0 19.84/21.22 [U141#](X1,X2,X3) = 0 19.84/21.22 [U151#](X1,X2,X3) = 0 19.84/21.22 [U161#](X1,X2) = 0 19.84/21.22 [U171#](X1,X2,X3) = 0 19.84/21.22 [U181#](X1,X2) = 0 19.84/21.22 [U191#](X1,X2,X3) = 0 19.84/21.22 [U21#](X1,X2,X3) = X1 + 2.X2 + 2.X3 19.84/21.22 [U22#](X1,X2) = 2.X2 + 1 19.84/21.22 [U23#](X) = 0 19.84/21.22 [U31#](X1,X2) = 0 19.84/21.22 [U32#](X) = 0 19.84/21.22 [U41#](X1,X2) = 0 19.84/21.22 [U42#](X) = 0 19.84/21.22 [U51#](X1,X2,X3) = 0 19.84/21.22 [U52#](X1,X2) = 0 19.84/21.22 [U53#](X) = 0 19.84/21.22 [U61#](X1,X2,X3) = 0 19.84/21.22 [U62#](X1,X2) = 0 19.84/21.22 [U63#](X) = 0 19.84/21.22 [U71#](X1,X2) = 0 19.84/21.22 [U72#](X) = 0 19.84/21.22 [U81#](X1,X2) = 0 19.84/21.22 [U82#](X) = 0 19.84/21.22 [U91#](X) = 0 19.84/21.22 [AND](X1,X2) = 0 19.84/21.22 [ISBAG](X) = 2.X + 1 19.84/21.22 [ISBAGKIND](X) = 0 19.84/21.22 [ISBIN](X) = 0 19.84/21.22 [ISBINKIND](X) = 0 19.84/21.22 [MULT](X1,X2) = 0 19.84/21.22 [PLUS](X1,X2) = 0 19.84/21.22 [PROD](X) = 0 19.84/21.22 [SUM](X) = 0 19.84/21.22 [UNION](X1,X2) = 0 19.84/21.22 19.84/21.22 Problem 1.3.1: 19.84/21.22 19.84/21.22 SCC Processor: 19.84/21.22 -> FAxioms: 19.84/21.22 Empty 19.84/21.22 -> Pairs: 19.84/21.22 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.22 U22#(tt,V2) -> ISBAG(V2) 19.84/21.22 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 -> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->Strongly Connected Components: 19.84/21.22 ->->Cycle: 19.84/21.22 ->->-> Pairs: 19.84/21.22 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.22 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 -> FAxioms: 19.84/21.22 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) -> mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) -> plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) -> union(x7,x6) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 ->->-> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 19.84/21.22 Problem 1.3.1: 19.84/21.22 19.84/21.22 Subterm Processor: 19.84/21.22 -> FAxioms: 19.84/21.22 Empty 19.84/21.22 -> Pairs: 19.84/21.22 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.22 ISBAG(union(V1,V2)) -> U21#(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 -> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->Projection: 19.84/21.22 pi(U21#) = [2] 19.84/21.22 pi(ISBAG) = [1] 19.84/21.22 19.84/21.22 Problem 1.3.1: 19.84/21.22 19.84/21.22 SCC Processor: 19.84/21.22 -> FAxioms: 19.84/21.22 Empty 19.84/21.22 -> Pairs: 19.84/21.22 U21#(tt,V1,V2) -> ISBAG(V1) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 -> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->Strongly Connected Components: 19.84/21.22 There is no strongly connected component 19.84/21.22 19.84/21.22 The problem is finite. 19.84/21.22 19.84/21.22 Problem 1.3.2: 19.84/21.22 19.84/21.22 Reduction Pairs Processor: 19.84/21.22 -> FAxioms: 19.84/21.22 Empty 19.84/21.22 -> Pairs: 19.84/21.22 U31#(tt,V1) -> ISBIN(V1) 19.84/21.22 U41#(tt,V1) -> ISBIN(V1) 19.84/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.84/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.84/21.22 U52#(tt,V2) -> ISBIN(V2) 19.84/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.84/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.84/21.22 U62#(tt,V2) -> ISBIN(V2) 19.84/21.22 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.84/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.84/21.22 -> EAxioms: 19.84/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.84/21.22 mult(x6,x7) = mult(x7,x6) 19.84/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.84/21.22 plus(x6,x7) = plus(x7,x6) 19.84/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.84/21.22 union(x6,x7) = union(x7,x6) 19.84/21.22 -> Usable Equations: 19.84/21.22 Empty 19.84/21.22 -> Rules: 19.84/21.22 0(z) -> z 19.84/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U121(tt,X) -> X 19.84/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.84/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.84/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.84/21.22 U161(tt,X) -> X 19.84/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.84/21.22 U181(tt,X) -> X 19.84/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 U91(tt) -> z 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.84/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.84/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.84/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 prod(empty) -> 1(z) 19.84/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.84/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.84/21.22 sum(empty) -> 0(z) 19.84/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.84/21.22 union(empty,X) -> X 19.84/21.22 union(X,empty) -> X 19.84/21.22 -> Usable Rules: 19.84/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.84/21.22 U12(tt) -> tt 19.84/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.84/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.84/21.22 U23(tt) -> tt 19.84/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.84/21.22 U32(tt) -> tt 19.84/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.84/21.22 U42(tt) -> tt 19.84/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.84/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.84/21.22 U53(tt) -> tt 19.84/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.84/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.84/21.22 U63(tt) -> tt 19.84/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.84/21.22 U72(tt) -> tt 19.84/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.84/21.22 U82(tt) -> tt 19.84/21.22 and(tt,X) -> X 19.84/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.84/21.22 isBag(empty) -> tt 19.84/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.84/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.84/21.22 isBagKind(empty) -> tt 19.84/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.84/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.84/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.84/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.84/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.84/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.84/21.22 isBin(z) -> tt 19.84/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.84/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.84/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.84/21.22 isBinKind(z) -> tt 19.84/21.22 -> SRules: 19.84/21.22 Empty 19.84/21.22 ->Interpretation type: 19.84/21.22 Linear 19.84/21.22 ->Coefficients: 19.84/21.22 Natural Numbers 19.84/21.22 ->Dimension: 19.84/21.22 1 19.84/21.22 ->Bound: 19.84/21.22 2 19.84/21.22 ->Interpretation: 19.84/21.22 19.84/21.22 [0](X) = 2.X + 1 19.84/21.22 [U101](X1,X2,X3) = 0 19.84/21.22 [U11](X1,X2) = 2 19.84/21.22 [U111](X1,X2,X3) = 0 19.84/21.22 [U12](X) = 2 19.84/21.22 [U121](X1,X2) = 0 19.84/21.22 [U131](X1,X2,X3) = 0 19.84/21.22 [U141](X1,X2,X3) = 0 19.84/21.22 [U151](X1,X2,X3) = 0 19.84/21.22 [U161](X1,X2) = 0 19.84/21.22 [U171](X1,X2,X3) = 0 19.84/21.22 [U181](X1,X2) = 0 19.84/21.22 [U191](X1,X2,X3) = 0 19.84/21.22 [U21](X1,X2,X3) = 2 19.84/21.22 [U22](X1,X2) = 2 19.84/21.22 [U23](X) = X 19.84/21.22 [U31](X1,X2) = X1 + 2.X2 19.84/21.22 [U32](X) = X + 2 19.84/21.22 [U41](X1,X2) = 2.X1 19.84/21.22 [U42](X) = 2 19.84/21.22 [U51](X1,X2,X3) = 2.X1 + 2 19.84/21.22 [U52](X1,X2) = 2 19.84/21.22 [U53](X) = 2 19.84/21.22 [U61](X1,X2,X3) = 2.X2 + X3 + 2 19.84/21.22 [U62](X1,X2) = X1 + 2 19.84/21.22 [U63](X) = 2 19.84/21.22 [U71](X1,X2) = X1 + 2.X2 + 1 19.84/21.22 [U72](X) = X 19.84/21.22 [U81](X1,X2) = 2.X1 + 2 19.84/21.22 [U82](X) = X + 2 19.84/21.22 [U91](X) = 0 19.84/21.22 [and](X1,X2) = X2 19.84/21.22 [isBag](X) = 2 19.84/21.22 [isBagKind](X) = 2.X + 1 19.84/21.22 [isBin](X) = 2.X 19.84/21.22 [isBinKind](X) = 2.X + 1 19.84/21.22 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.84/21.22 [plus](X1,X2) = X1 + 2.X2 + 2 19.84/21.22 [prod](X) = 2.X + 2 19.84/21.22 [sum](X) = 2.X + 2 19.84/21.22 [union](X1,X2) = 2.X1 + 2.X2 19.84/21.22 [1](X) = 2.X + 2 19.84/21.22 [empty] = 2 19.84/21.22 [singl](X) = X + 1 19.84/21.22 [tt] = 2 19.84/21.22 [z] = 2 19.84/21.22 [0#](X) = 0 19.84/21.22 [U101#](X1,X2,X3) = 0 19.84/21.22 [U11#](X1,X2) = 0 19.84/21.22 [U111#](X1,X2,X3) = 0 19.84/21.22 [U12#](X) = 0 19.84/21.22 [U121#](X1,X2) = 0 19.84/21.22 [U131#](X1,X2,X3) = 0 19.84/21.22 [U141#](X1,X2,X3) = 0 19.84/21.22 [U151#](X1,X2,X3) = 0 19.84/21.22 [U161#](X1,X2) = 0 19.84/21.22 [U171#](X1,X2,X3) = 0 19.84/21.22 [U181#](X1,X2) = 0 19.84/21.22 [U191#](X1,X2,X3) = 0 19.84/21.22 [U21#](X1,X2,X3) = 0 19.84/21.22 [U22#](X1,X2) = 0 19.84/21.22 [U23#](X) = 0 19.84/21.22 [U31#](X1,X2) = 2.X2 + 2 19.84/21.22 [U32#](X) = 0 19.84/21.22 [U41#](X1,X2) = X1 + 2.X2 + 1 19.84/21.22 [U42#](X) = 0 19.84/21.22 [U51#](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.84/21.22 [U52#](X1,X2) = X1 + 2.X2 + 1 19.84/21.22 [U53#](X) = 0 19.84/21.22 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.84/21.22 [U62#](X1,X2) = X1 + 2.X2 + 2 19.84/21.22 [U63#](X) = 0 19.84/21.22 [U71#](X1,X2) = 0 19.84/21.22 [U72#](X) = 0 19.84/21.22 [U81#](X1,X2) = 0 19.84/21.22 [U82#](X) = 0 19.84/21.22 [U91#](X) = 0 19.84/21.22 [AND](X1,X2) = 0 19.84/21.22 [ISBAG](X) = 0 19.84/21.22 [ISBAGKIND](X) = 0 19.84/21.22 [ISBIN](X) = 2.X + 1 19.84/21.22 [ISBINKIND](X) = 0 19.84/21.22 [MULT](X1,X2) = 0 19.84/21.22 [PLUS](X1,X2) = 0 19.84/21.22 [PROD](X) = 0 19.84/21.22 [SUM](X) = 0 19.84/21.22 [UNION](X1,X2) = 0 19.84/21.22 19.84/21.22 Problem 1.3.2: 19.84/21.22 19.84/21.22 SCC Processor: 19.84/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U41#(tt,V1) -> ISBIN(V1) 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(0(V1)) -> U31#(isBinKind(V1),V1) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 ->Strongly Connected Components: 19.93/21.22 ->->Cycle: 19.93/21.22 ->->-> Pairs: 19.93/21.22 U41#(tt,V1) -> ISBIN(V1) 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.93/21.22 -> FAxioms: 19.93/21.22 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) -> mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) -> plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) -> union(x7,x6) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 ->->-> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 19.93/21.22 Problem 1.3.2: 19.93/21.22 19.93/21.22 Reduction Pairs Processor: 19.93/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U41#(tt,V1) -> ISBIN(V1) 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Usable Equations: 19.93/21.22 Empty 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> Usable Rules: 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 ->Interpretation type: 19.93/21.22 Linear 19.93/21.22 ->Coefficients: 19.93/21.22 Natural Numbers 19.93/21.22 ->Dimension: 19.93/21.22 1 19.93/21.22 ->Bound: 19.93/21.22 2 19.93/21.22 ->Interpretation: 19.93/21.22 19.93/21.22 [0](X) = 2.X + 2 19.93/21.22 [U101](X1,X2,X3) = 0 19.93/21.22 [U11](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [U111](X1,X2,X3) = 0 19.93/21.22 [U12](X) = 2 19.93/21.22 [U121](X1,X2) = 0 19.93/21.22 [U131](X1,X2,X3) = 0 19.93/21.22 [U141](X1,X2,X3) = 0 19.93/21.22 [U151](X1,X2,X3) = 0 19.93/21.22 [U161](X1,X2) = 0 19.93/21.22 [U171](X1,X2,X3) = 0 19.93/21.22 [U181](X1,X2) = 0 19.93/21.22 [U191](X1,X2,X3) = 0 19.93/21.22 [U21](X1,X2,X3) = 2.X1 19.93/21.22 [U22](X1,X2) = 2 19.93/21.22 [U23](X) = 2 19.93/21.22 [U31](X1,X2) = X1 + 2 19.93/21.22 [U32](X) = 2 19.93/21.22 [U41](X1,X2) = 2.X1 + X2 19.93/21.22 [U42](X) = 2 19.93/21.22 [U51](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.93/21.22 [U52](X1,X2) = X1 + 2.X2 19.93/21.22 [U53](X) = X 19.93/21.22 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.22 [U62](X1,X2) = X2 + 2 19.93/21.22 [U63](X) = 2 19.93/21.22 [U71](X1,X2) = X1 + 2 19.93/21.22 [U72](X) = 2 19.93/21.22 [U81](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [U82](X) = X 19.93/21.22 [U91](X) = 0 19.93/21.22 [and](X1,X2) = X2 19.93/21.22 [isBag](X) = 2.X + 2 19.93/21.22 [isBagKind](X) = 2.X + 2 19.93/21.22 [isBin](X) = 2.X + 2 19.93/21.22 [isBinKind](X) = X + 2 19.93/21.22 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.22 [plus](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [prod](X) = 2.X + 1 19.93/21.22 [sum](X) = 2.X + 2 19.93/21.22 [union](X1,X2) = 2.X2 + 1 19.93/21.22 [1](X) = 2.X + 2 19.93/21.22 [empty] = 2 19.93/21.22 [singl](X) = 2.X + 2 19.93/21.22 [tt] = 2 19.93/21.22 [z] = 1 19.93/21.22 [0#](X) = 0 19.93/21.22 [U101#](X1,X2,X3) = 0 19.93/21.22 [U11#](X1,X2) = 0 19.93/21.22 [U111#](X1,X2,X3) = 0 19.93/21.22 [U12#](X) = 0 19.93/21.22 [U121#](X1,X2) = 0 19.93/21.22 [U131#](X1,X2,X3) = 0 19.93/21.22 [U141#](X1,X2,X3) = 0 19.93/21.22 [U151#](X1,X2,X3) = 0 19.93/21.22 [U161#](X1,X2) = 0 19.93/21.22 [U171#](X1,X2,X3) = 0 19.93/21.22 [U181#](X1,X2) = 0 19.93/21.22 [U191#](X1,X2,X3) = 0 19.93/21.22 [U21#](X1,X2,X3) = 0 19.93/21.22 [U22#](X1,X2) = 0 19.93/21.22 [U23#](X) = 0 19.93/21.22 [U31#](X1,X2) = 0 19.93/21.22 [U32#](X) = 0 19.93/21.22 [U41#](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.22 [U42#](X) = 0 19.93/21.22 [U51#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.22 [U52#](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [U53#](X) = 0 19.93/21.22 [U61#](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.22 [U62#](X1,X2) = 2.X2 + 2 19.93/21.22 [U63#](X) = 0 19.93/21.22 [U71#](X1,X2) = 0 19.93/21.22 [U72#](X) = 0 19.93/21.22 [U81#](X1,X2) = 0 19.93/21.22 [U82#](X) = 0 19.93/21.22 [U91#](X) = 0 19.93/21.22 [AND](X1,X2) = 0 19.93/21.22 [ISBAG](X) = 0 19.93/21.22 [ISBAGKIND](X) = 0 19.93/21.22 [ISBIN](X) = 2.X + 2 19.93/21.22 [ISBINKIND](X) = 0 19.93/21.22 [MULT](X1,X2) = 0 19.93/21.22 [PLUS](X1,X2) = 0 19.93/21.22 [PROD](X) = 0 19.93/21.22 [SUM](X) = 0 19.93/21.22 [UNION](X1,X2) = 0 19.93/21.22 19.93/21.22 Problem 1.3.2: 19.93/21.22 19.93/21.22 SCC Processor: 19.93/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(1(V1)) -> U41#(isBinKind(V1),V1) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 ->Strongly Connected Components: 19.93/21.22 ->->Cycle: 19.93/21.22 ->->-> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 -> FAxioms: 19.93/21.22 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) -> mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) -> plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) -> union(x7,x6) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 ->->-> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 19.93/21.22 Problem 1.3.2: 19.93/21.22 19.93/21.22 Reduction Pairs Processor: 19.93/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> U52#(isBin(V1),V2) 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Usable Equations: 19.93/21.22 Empty 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> Usable Rules: 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 ->Interpretation type: 19.93/21.22 Linear 19.93/21.22 ->Coefficients: 19.93/21.22 Natural Numbers 19.93/21.22 ->Dimension: 19.93/21.22 1 19.93/21.22 ->Bound: 19.93/21.22 2 19.93/21.22 ->Interpretation: 19.93/21.22 19.93/21.22 [0](X) = 2.X + 2 19.93/21.22 [U101](X1,X2,X3) = 0 19.93/21.22 [U11](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [U111](X1,X2,X3) = 0 19.93/21.22 [U12](X) = X + 2 19.93/21.22 [U121](X1,X2) = 0 19.93/21.22 [U131](X1,X2,X3) = 0 19.93/21.22 [U141](X1,X2,X3) = 0 19.93/21.22 [U151](X1,X2,X3) = 0 19.93/21.22 [U161](X1,X2) = 0 19.93/21.22 [U171](X1,X2,X3) = 0 19.93/21.22 [U181](X1,X2) = 0 19.93/21.22 [U191](X1,X2,X3) = 0 19.93/21.22 [U21](X1,X2,X3) = 2.X3 + 2 19.93/21.22 [U22](X1,X2) = 2.X2 + 2 19.93/21.22 [U23](X) = 2 19.93/21.22 [U31](X1,X2) = 2.X1 + 2 19.93/21.22 [U32](X) = 2 19.93/21.22 [U41](X1,X2) = X1 + 2 19.93/21.22 [U42](X) = 2 19.93/21.22 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2 19.93/21.22 [U52](X1,X2) = 2.X1 + 2 19.93/21.22 [U53](X) = 2 19.93/21.22 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2 19.93/21.22 [U62](X1,X2) = 2.X1 + 2 19.93/21.22 [U63](X) = 2 19.93/21.22 [U71](X1,X2) = X1 + 2 19.93/21.22 [U72](X) = 2 19.93/21.22 [U81](X1,X2) = X1 19.93/21.22 [U82](X) = 2 19.93/21.22 [U91](X) = 0 19.93/21.22 [and](X1,X2) = X2 + 1 19.93/21.22 [isBag](X) = 2.X + 2 19.93/21.22 [isBagKind](X) = 2.X + 2 19.93/21.22 [isBin](X) = X + 2 19.93/21.22 [isBinKind](X) = X 19.93/21.22 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.22 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.22 [prod](X) = 2.X + 2 19.93/21.22 [sum](X) = 2.X + 2 19.93/21.22 [union](X1,X2) = 2.X2 + 2 19.93/21.22 [1](X) = X 19.93/21.22 [empty] = 2 19.93/21.22 [singl](X) = 2.X + 2 19.93/21.22 [tt] = 2 19.93/21.22 [z] = 2 19.93/21.22 [0#](X) = 0 19.93/21.22 [U101#](X1,X2,X3) = 0 19.93/21.22 [U11#](X1,X2) = 0 19.93/21.22 [U111#](X1,X2,X3) = 0 19.93/21.22 [U12#](X) = 0 19.93/21.22 [U121#](X1,X2) = 0 19.93/21.22 [U131#](X1,X2,X3) = 0 19.93/21.22 [U141#](X1,X2,X3) = 0 19.93/21.22 [U151#](X1,X2,X3) = 0 19.93/21.22 [U161#](X1,X2) = 0 19.93/21.22 [U171#](X1,X2,X3) = 0 19.93/21.22 [U181#](X1,X2) = 0 19.93/21.22 [U191#](X1,X2,X3) = 0 19.93/21.22 [U21#](X1,X2,X3) = 0 19.93/21.22 [U22#](X1,X2) = 0 19.93/21.22 [U23#](X) = 0 19.93/21.22 [U31#](X1,X2) = 0 19.93/21.22 [U32#](X) = 0 19.93/21.22 [U41#](X1,X2) = 0 19.93/21.22 [U42#](X) = 0 19.93/21.22 [U51#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.22 [U52#](X1,X2) = 2.X1 + 2.X2 + 1 19.93/21.22 [U53#](X) = 0 19.93/21.22 [U61#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 19.93/21.22 [U62#](X1,X2) = X1 + 2.X2 + 2 19.93/21.22 [U63#](X) = 0 19.93/21.22 [U71#](X1,X2) = 0 19.93/21.22 [U72#](X) = 0 19.93/21.22 [U81#](X1,X2) = 0 19.93/21.22 [U82#](X) = 0 19.93/21.22 [U91#](X) = 0 19.93/21.22 [AND](X1,X2) = 0 19.93/21.22 [ISBAG](X) = 0 19.93/21.22 [ISBAGKIND](X) = 0 19.93/21.22 [ISBIN](X) = 2.X + 2 19.93/21.22 [ISBINKIND](X) = 0 19.93/21.22 [MULT](X1,X2) = 0 19.93/21.22 [PLUS](X1,X2) = 0 19.93/21.22 [PROD](X) = 0 19.93/21.22 [SUM](X) = 0 19.93/21.22 [UNION](X1,X2) = 0 19.93/21.22 19.93/21.22 Problem 1.3.2: 19.93/21.22 19.93/21.22 SCC Processor: 19.93/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U52#(tt,V2) -> ISBIN(V2) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 ->Strongly Connected Components: 19.93/21.22 ->->Cycle: 19.93/21.22 ->->-> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 -> FAxioms: 19.93/21.22 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) -> mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) -> plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) -> union(x7,x6) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 ->->-> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.22 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.22 U181(tt,X) -> X 19.93/21.22 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.22 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.22 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.22 U23(tt) -> tt 19.93/21.22 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.22 U32(tt) -> tt 19.93/21.22 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.22 U42(tt) -> tt 19.93/21.22 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.22 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.22 U53(tt) -> tt 19.93/21.22 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.22 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.22 U63(tt) -> tt 19.93/21.22 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.22 U72(tt) -> tt 19.93/21.22 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.22 U82(tt) -> tt 19.93/21.22 U91(tt) -> z 19.93/21.22 and(tt,X) -> X 19.93/21.22 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.22 isBag(empty) -> tt 19.93/21.22 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.22 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.22 isBagKind(empty) -> tt 19.93/21.22 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.22 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.22 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.22 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.22 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.22 isBin(z) -> tt 19.93/21.22 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.22 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.22 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.22 isBinKind(z) -> tt 19.93/21.22 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.22 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.22 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.22 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 prod(empty) -> 1(z) 19.93/21.22 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.22 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.22 sum(empty) -> 0(z) 19.93/21.22 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.22 union(empty,X) -> X 19.93/21.22 union(X,empty) -> X 19.93/21.22 -> SRules: 19.93/21.22 Empty 19.93/21.22 19.93/21.22 Problem 1.3.2: 19.93/21.22 19.93/21.22 Reduction Pairs Processor: 19.93/21.22 -> FAxioms: 19.93/21.22 Empty 19.93/21.22 -> Pairs: 19.93/21.22 U51#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.22 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.22 U62#(tt,V2) -> ISBIN(V2) 19.93/21.22 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.22 -> EAxioms: 19.93/21.22 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.22 mult(x6,x7) = mult(x7,x6) 19.93/21.22 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.22 plus(x6,x7) = plus(x7,x6) 19.93/21.22 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.22 union(x6,x7) = union(x7,x6) 19.93/21.22 -> Usable Equations: 19.93/21.22 Empty 19.93/21.22 -> Rules: 19.93/21.22 0(z) -> z 19.93/21.22 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.22 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.22 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.22 U12(tt) -> tt 19.93/21.22 U121(tt,X) -> X 19.93/21.22 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.22 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.22 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.22 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> Usable Rules: 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Interpretation type: 19.93/21.23 Linear 19.93/21.23 ->Coefficients: 19.93/21.23 Natural Numbers 19.93/21.23 ->Dimension: 19.93/21.23 1 19.93/21.23 ->Bound: 19.93/21.23 2 19.93/21.23 ->Interpretation: 19.93/21.23 19.93/21.23 [0](X) = 2.X + 2 19.93/21.23 [U101](X1,X2,X3) = 0 19.93/21.23 [U11](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [U111](X1,X2,X3) = 0 19.93/21.23 [U12](X) = X 19.93/21.23 [U121](X1,X2) = 0 19.93/21.23 [U131](X1,X2,X3) = 0 19.93/21.23 [U141](X1,X2,X3) = 0 19.93/21.23 [U151](X1,X2,X3) = 0 19.93/21.23 [U161](X1,X2) = 0 19.93/21.23 [U171](X1,X2,X3) = 0 19.93/21.23 [U181](X1,X2) = 0 19.93/21.23 [U191](X1,X2,X3) = 0 19.93/21.23 [U21](X1,X2,X3) = X1 + X3 + 2 19.93/21.23 [U22](X1,X2) = X2 + 2 19.93/21.23 [U23](X) = 2 19.93/21.23 [U31](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [U32](X) = 2 19.93/21.23 [U41](X1,X2) = 2.X1 + X2 + 2 19.93/21.23 [U42](X) = 2 19.93/21.23 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U52](X1,X2) = 2.X2 + 2 19.93/21.23 [U53](X) = 2 19.93/21.23 [U61](X1,X2,X3) = 2.X1 + 2.X3 + 2 19.93/21.23 [U62](X1,X2) = 2.X2 + 2 19.93/21.23 [U63](X) = X 19.93/21.23 [U71](X1,X2) = 2.X2 + 2 19.93/21.23 [U72](X) = X + 1 19.93/21.23 [U81](X1,X2) = 2.X1 + 2 19.93/21.23 [U82](X) = 1 19.93/21.23 [U91](X) = 0 19.93/21.23 [and](X1,X2) = X2 + 1 19.93/21.23 [isBag](X) = 2.X + 1 19.93/21.23 [isBagKind](X) = 2.X + 1 19.93/21.23 [isBin](X) = 2.X + 2 19.93/21.23 [isBinKind](X) = X + 1 19.93/21.23 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [plus](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [prod](X) = 2.X + 2 19.93/21.23 [sum](X) = 2.X + 2 19.93/21.23 [union](X1,X2) = 2.X2 + 2 19.93/21.23 [1](X) = 2.X + 2 19.93/21.23 [empty] = 2 19.93/21.23 [singl](X) = 2.X + 2 19.93/21.23 [tt] = 0 19.93/21.23 [z] = 2 19.93/21.23 [0#](X) = 0 19.93/21.23 [U101#](X1,X2,X3) = 0 19.93/21.23 [U11#](X1,X2) = 0 19.93/21.23 [U111#](X1,X2,X3) = 0 19.93/21.23 [U12#](X) = 0 19.93/21.23 [U121#](X1,X2) = 0 19.93/21.23 [U131#](X1,X2,X3) = 0 19.93/21.23 [U141#](X1,X2,X3) = 0 19.93/21.23 [U151#](X1,X2,X3) = 0 19.93/21.23 [U161#](X1,X2) = 0 19.93/21.23 [U171#](X1,X2,X3) = 0 19.93/21.23 [U181#](X1,X2) = 0 19.93/21.23 [U191#](X1,X2,X3) = 0 19.93/21.23 [U21#](X1,X2,X3) = 0 19.93/21.23 [U22#](X1,X2) = 0 19.93/21.23 [U23#](X) = 0 19.93/21.23 [U31#](X1,X2) = 0 19.93/21.23 [U32#](X) = 0 19.93/21.23 [U41#](X1,X2) = 0 19.93/21.23 [U42#](X) = 0 19.93/21.23 [U51#](X1,X2,X3) = 2.X2 + 2 19.93/21.23 [U52#](X1,X2) = 0 19.93/21.23 [U53#](X) = 0 19.93/21.23 [U61#](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U62#](X1,X2) = 2.X2 + 2 19.93/21.23 [U63#](X) = 0 19.93/21.23 [U71#](X1,X2) = 0 19.93/21.23 [U72#](X) = 0 19.93/21.23 [U81#](X1,X2) = 0 19.93/21.23 [U82#](X) = 0 19.93/21.23 [U91#](X) = 0 19.93/21.23 [AND](X1,X2) = 0 19.93/21.23 [ISBAG](X) = 0 19.93/21.23 [ISBAGKIND](X) = 0 19.93/21.23 [ISBIN](X) = 2.X + 1 19.93/21.23 [ISBINKIND](X) = 0 19.93/21.23 [MULT](X1,X2) = 0 19.93/21.23 [PLUS](X1,X2) = 0 19.93/21.23 [PROD](X) = 0 19.93/21.23 [SUM](X) = 0 19.93/21.23 [UNION](X1,X2) = 0 19.93/21.23 19.93/21.23 Problem 1.3.2: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 Empty 19.93/21.23 -> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 U62#(tt,V2) -> ISBIN(V2) 19.93/21.23 ISBIN(mult(V1,V2)) -> U51#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Strongly Connected Components: 19.93/21.23 ->->Cycle: 19.93/21.23 ->->-> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 U62#(tt,V2) -> ISBIN(V2) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> FAxioms: 19.93/21.23 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) -> mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) -> plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) -> union(x7,x6) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 ->->-> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 19.93/21.23 Problem 1.3.2: 19.93/21.23 19.93/21.23 Reduction Pairs Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 Empty 19.93/21.23 -> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> U62#(isBin(V1),V2) 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 U62#(tt,V2) -> ISBIN(V2) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Usable Equations: 19.93/21.23 Empty 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> Usable Rules: 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Interpretation type: 19.93/21.23 Linear 19.93/21.23 ->Coefficients: 19.93/21.23 Natural Numbers 19.93/21.23 ->Dimension: 19.93/21.23 1 19.93/21.23 ->Bound: 19.93/21.23 2 19.93/21.23 ->Interpretation: 19.93/21.23 19.93/21.23 [0](X) = 2.X + 2 19.93/21.23 [U101](X1,X2,X3) = 0 19.93/21.23 [U11](X1,X2) = 2.X1 + 2 19.93/21.23 [U111](X1,X2,X3) = 0 19.93/21.23 [U12](X) = 2 19.93/21.23 [U121](X1,X2) = 0 19.93/21.23 [U131](X1,X2,X3) = 0 19.93/21.23 [U141](X1,X2,X3) = 0 19.93/21.23 [U151](X1,X2,X3) = 0 19.93/21.23 [U161](X1,X2) = 0 19.93/21.23 [U171](X1,X2,X3) = 0 19.93/21.23 [U181](X1,X2) = 0 19.93/21.23 [U191](X1,X2,X3) = 0 19.93/21.23 [U21](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U22](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U23](X) = X + 2 19.93/21.23 [U31](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U32](X) = X + 2 19.93/21.23 [U41](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U42](X) = X + 2 19.93/21.23 [U51](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.23 [U52](X1,X2) = 2.X2 + 2 19.93/21.23 [U53](X) = 2 19.93/21.23 [U61](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 1 19.93/21.23 [U62](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U63](X) = X + 2 19.93/21.23 [U71](X1,X2) = 2 19.93/21.23 [U72](X) = 2 19.93/21.23 [U81](X1,X2) = 2.X1 + 2.X2 19.93/21.23 [U82](X) = X + 2 19.93/21.23 [U91](X) = 0 19.93/21.23 [and](X1,X2) = X2 19.93/21.23 [isBag](X) = 2.X + 2 19.93/21.23 [isBagKind](X) = 2 19.93/21.23 [isBin](X) = 2.X 19.93/21.23 [isBinKind](X) = 2 19.93/21.23 [mult](X1,X2) = 2.X1 + X2 + 2 19.93/21.23 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [prod](X) = 2 19.93/21.23 [sum](X) = 2.X + 2 19.93/21.23 [union](X1,X2) = X1 + 2.X2 + 1 19.93/21.23 [1](X) = 2.X + 2 19.93/21.23 [empty] = 1 19.93/21.23 [singl](X) = 2 19.93/21.23 [tt] = 2 19.93/21.23 [z] = 2 19.93/21.23 [0#](X) = 0 19.93/21.23 [U101#](X1,X2,X3) = 0 19.93/21.23 [U11#](X1,X2) = 0 19.93/21.23 [U111#](X1,X2,X3) = 0 19.93/21.23 [U12#](X) = 0 19.93/21.23 [U121#](X1,X2) = 0 19.93/21.23 [U131#](X1,X2,X3) = 0 19.93/21.23 [U141#](X1,X2,X3) = 0 19.93/21.23 [U151#](X1,X2,X3) = 0 19.93/21.23 [U161#](X1,X2) = 0 19.93/21.23 [U171#](X1,X2,X3) = 0 19.93/21.23 [U181#](X1,X2) = 0 19.93/21.23 [U191#](X1,X2,X3) = 0 19.93/21.23 [U21#](X1,X2,X3) = 0 19.93/21.23 [U22#](X1,X2) = 0 19.93/21.23 [U23#](X) = 0 19.93/21.23 [U31#](X1,X2) = 0 19.93/21.23 [U32#](X) = 0 19.93/21.23 [U41#](X1,X2) = 0 19.93/21.23 [U42#](X) = 0 19.93/21.23 [U51#](X1,X2,X3) = 0 19.93/21.23 [U52#](X1,X2) = 0 19.93/21.23 [U53#](X) = 0 19.93/21.23 [U61#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U62#](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U63#](X) = 0 19.93/21.23 [U71#](X1,X2) = 0 19.93/21.23 [U72#](X) = 0 19.93/21.23 [U81#](X1,X2) = 0 19.93/21.23 [U82#](X) = 0 19.93/21.23 [U91#](X) = 0 19.93/21.23 [AND](X1,X2) = 0 19.93/21.23 [ISBAG](X) = 0 19.93/21.23 [ISBAGKIND](X) = 0 19.93/21.23 [ISBIN](X) = 2.X + 2 19.93/21.23 [ISBINKIND](X) = 0 19.93/21.23 [MULT](X1,X2) = 0 19.93/21.23 [PLUS](X1,X2) = 0 19.93/21.23 [PROD](X) = 0 19.93/21.23 [SUM](X) = 0 19.93/21.23 [UNION](X1,X2) = 0 19.93/21.23 19.93/21.23 Problem 1.3.2: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 Empty 19.93/21.23 -> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 U62#(tt,V2) -> ISBIN(V2) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Strongly Connected Components: 19.93/21.23 ->->Cycle: 19.93/21.23 ->->-> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> FAxioms: 19.93/21.23 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) -> mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) -> plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) -> union(x7,x6) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 ->->-> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 19.93/21.23 Problem 1.3.2: 19.93/21.23 19.93/21.23 Subterm Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 Empty 19.93/21.23 -> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 ISBIN(plus(V1,V2)) -> U61#(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Projection: 19.93/21.23 pi(U61#) = [2] 19.93/21.23 pi(ISBIN) = [1] 19.93/21.23 19.93/21.23 Problem 1.3.2: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 Empty 19.93/21.23 -> Pairs: 19.93/21.23 U61#(tt,V1,V2) -> ISBIN(V1) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 Empty 19.93/21.23 ->Strongly Connected Components: 19.93/21.23 There is no strongly connected component 19.93/21.23 19.93/21.23 The problem is finite. 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 Reduction Pairs Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U131#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 U141#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(0(X),0(Y)) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Usable Equations: 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> Usable Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 ->Interpretation type: 19.93/21.23 Linear 19.93/21.23 ->Coefficients: 19.93/21.23 Natural Numbers 19.93/21.23 ->Dimension: 19.93/21.23 1 19.93/21.23 ->Bound: 19.93/21.23 2 19.93/21.23 ->Interpretation: 19.93/21.23 19.93/21.23 [0](X) = X + 1 19.93/21.23 [U101](X1,X2,X3) = 0 19.93/21.23 [U11](X1,X2) = 2.X2 + 2 19.93/21.23 [U111](X1,X2,X3) = 0 19.93/21.23 [U12](X) = 2 19.93/21.23 [U121](X1,X2) = X2 19.93/21.23 [U131](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U141](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U151](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U161](X1,X2) = 0 19.93/21.23 [U171](X1,X2,X3) = 0 19.93/21.23 [U181](X1,X2) = 0 19.93/21.23 [U191](X1,X2,X3) = 0 19.93/21.23 [U21](X1,X2,X3) = 2 19.93/21.23 [U22](X1,X2) = 2 19.93/21.23 [U23](X) = 2 19.93/21.23 [U31](X1,X2) = 2.X1 + 2.X2 19.93/21.23 [U32](X) = 2 19.93/21.23 [U41](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U42](X) = X + 2 19.93/21.23 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U52](X1,X2) = X1 + 2.X2 + 2 19.93/21.23 [U53](X) = X + 1 19.93/21.23 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.23 [U62](X1,X2) = 2.X2 + 2 19.93/21.23 [U63](X) = 2 19.93/21.23 [U71](X1,X2) = 2.X1 + 2 19.93/21.23 [U72](X) = 2 19.93/21.23 [U81](X1,X2) = 2.X1 + 1 19.93/21.23 [U82](X) = 2 19.93/21.23 [U91](X) = 0 19.93/21.23 [and](X1,X2) = X2 19.93/21.23 [isBag](X) = 2.X + 2 19.93/21.23 [isBagKind](X) = 2 19.93/21.23 [isBin](X) = 2.X + 2 19.93/21.23 [isBinKind](X) = 2 19.93/21.23 [mult](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [plus](X1,X2) = X1 + X2 19.93/21.23 [prod](X) = 2.X + 2 19.93/21.23 [sum](X) = 2.X + 2 19.93/21.23 [union](X1,X2) = 2 19.93/21.23 [1](X) = X + 1 19.93/21.23 [empty] = 1 19.93/21.23 [singl](X) = 2.X + 2 19.93/21.23 [tt] = 2 19.93/21.23 [z] = 0 19.93/21.23 [0#](X) = 0 19.93/21.23 [U101#](X1,X2,X3) = 0 19.93/21.23 [U11#](X1,X2) = 0 19.93/21.23 [U111#](X1,X2,X3) = 0 19.93/21.23 [U12#](X) = 0 19.93/21.23 [U121#](X1,X2) = 0 19.93/21.23 [U131#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 1 19.93/21.23 [U141#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U151#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 19.93/21.23 [U161#](X1,X2) = 0 19.93/21.23 [U171#](X1,X2,X3) = 0 19.93/21.23 [U181#](X1,X2) = 0 19.93/21.23 [U191#](X1,X2,X3) = 0 19.93/21.23 [U21#](X1,X2,X3) = 0 19.93/21.23 [U22#](X1,X2) = 0 19.93/21.23 [U23#](X) = 0 19.93/21.23 [U31#](X1,X2) = 0 19.93/21.23 [U32#](X) = 0 19.93/21.23 [U41#](X1,X2) = 0 19.93/21.23 [U42#](X) = 0 19.93/21.23 [U51#](X1,X2,X3) = 0 19.93/21.23 [U52#](X1,X2) = 0 19.93/21.23 [U53#](X) = 0 19.93/21.23 [U61#](X1,X2,X3) = 0 19.93/21.23 [U62#](X1,X2) = 0 19.93/21.23 [U63#](X) = 0 19.93/21.23 [U71#](X1,X2) = 0 19.93/21.23 [U72#](X) = 0 19.93/21.23 [U81#](X1,X2) = 0 19.93/21.23 [U82#](X) = 0 19.93/21.23 [U91#](X) = 0 19.93/21.23 [AND](X1,X2) = 0 19.93/21.23 [ISBAG](X) = 0 19.93/21.23 [ISBAGKIND](X) = 0 19.93/21.23 [ISBIN](X) = 0 19.93/21.23 [ISBINKIND](X) = 0 19.93/21.23 [MULT](X1,X2) = 0 19.93/21.23 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [PROD](X) = 0 19.93/21.23 [SUM](X) = 0 19.93/21.23 [UNION](X1,X2) = 0 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U141#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(0(X),0(Y)) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> U131#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 ->Strongly Connected Components: 19.93/21.23 ->->Cycle: 19.93/21.23 ->->-> Pairs: 19.93/21.23 U141#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> FAxioms: 19.93/21.23 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) -> mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) -> plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) -> union(x7,x6) 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 ->->-> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 Reduction Pairs Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U141#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Usable Equations: 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> Usable Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 ->Interpretation type: 19.93/21.23 Linear 19.93/21.23 ->Coefficients: 19.93/21.23 Natural Numbers 19.93/21.23 ->Dimension: 19.93/21.23 1 19.93/21.23 ->Bound: 19.93/21.23 2 19.93/21.23 ->Interpretation: 19.93/21.23 19.93/21.23 [0](X) = X 19.93/21.23 [U101](X1,X2,X3) = 0 19.93/21.23 [U11](X1,X2) = 2.X1 + 2 19.93/21.23 [U111](X1,X2,X3) = 0 19.93/21.23 [U12](X) = 2.X + 2 19.93/21.23 [U121](X1,X2) = X2 + 1 19.93/21.23 [U131](X1,X2,X3) = X2 + X3 19.93/21.23 [U141](X1,X2,X3) = X2 + X3 + 1 19.93/21.23 [U151](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U161](X1,X2) = 0 19.93/21.23 [U171](X1,X2,X3) = 0 19.93/21.23 [U181](X1,X2) = 0 19.93/21.23 [U191](X1,X2,X3) = 0 19.93/21.23 [U21](X1,X2,X3) = 2.X1 + 2.X2 19.93/21.23 [U22](X1,X2) = X1 + 2 19.93/21.23 [U23](X) = 2 19.93/21.23 [U31](X1,X2) = 2 19.93/21.23 [U32](X) = X 19.93/21.23 [U41](X1,X2) = 2 19.93/21.23 [U42](X) = 2 19.93/21.23 [U51](X1,X2,X3) = 2 19.93/21.23 [U52](X1,X2) = X1 19.93/21.23 [U53](X) = 2 19.93/21.23 [U61](X1,X2,X3) = 2 19.93/21.23 [U62](X1,X2) = 2 19.93/21.23 [U63](X) = X 19.93/21.23 [U71](X1,X2) = 2 19.93/21.23 [U72](X) = 2 19.93/21.23 [U81](X1,X2) = 2 19.93/21.23 [U82](X) = 2 19.93/21.23 [U91](X) = 0 19.93/21.23 [and](X1,X2) = X2 19.93/21.23 [isBag](X) = 2.X + 1 19.93/21.23 [isBagKind](X) = 2.X 19.93/21.23 [isBin](X) = 2 19.93/21.23 [isBinKind](X) = 2.X 19.93/21.23 [mult](X1,X2) = 2.X2 + 2 19.93/21.23 [plus](X1,X2) = X1 + X2 19.93/21.23 [prod](X) = 2.X 19.93/21.23 [sum](X) = 2.X 19.93/21.23 [union](X1,X2) = X1 + 2.X2 19.93/21.23 [1](X) = X + 1 19.93/21.23 [empty] = 2 19.93/21.23 [singl](X) = 2.X + 2 19.93/21.23 [tt] = 2 19.93/21.23 [z] = 1 19.93/21.23 [0#](X) = 0 19.93/21.23 [U101#](X1,X2,X3) = 0 19.93/21.23 [U11#](X1,X2) = 0 19.93/21.23 [U111#](X1,X2,X3) = 0 19.93/21.23 [U12#](X) = 0 19.93/21.23 [U121#](X1,X2) = 0 19.93/21.23 [U131#](X1,X2,X3) = 0 19.93/21.23 [U141#](X1,X2,X3) = X2 + X3 + 1 19.93/21.23 [U151#](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U161#](X1,X2) = 0 19.93/21.23 [U171#](X1,X2,X3) = 0 19.93/21.23 [U181#](X1,X2) = 0 19.93/21.23 [U191#](X1,X2,X3) = 0 19.93/21.23 [U21#](X1,X2,X3) = 0 19.93/21.23 [U22#](X1,X2) = 0 19.93/21.23 [U23#](X) = 0 19.93/21.23 [U31#](X1,X2) = 0 19.93/21.23 [U32#](X) = 0 19.93/21.23 [U41#](X1,X2) = 0 19.93/21.23 [U42#](X) = 0 19.93/21.23 [U51#](X1,X2,X3) = 0 19.93/21.23 [U52#](X1,X2) = 0 19.93/21.23 [U53#](X) = 0 19.93/21.23 [U61#](X1,X2,X3) = 0 19.93/21.23 [U62#](X1,X2) = 0 19.93/21.23 [U63#](X) = 0 19.93/21.23 [U71#](X1,X2) = 0 19.93/21.23 [U72#](X) = 0 19.93/21.23 [U81#](X1,X2) = 0 19.93/21.23 [U82#](X) = 0 19.93/21.23 [U91#](X) = 0 19.93/21.23 [AND](X1,X2) = 0 19.93/21.23 [ISBAG](X) = 0 19.93/21.23 [ISBAGKIND](X) = 0 19.93/21.23 [ISBIN](X) = 0 19.93/21.23 [ISBINKIND](X) = 0 19.93/21.23 [MULT](X1,X2) = 0 19.93/21.23 [PLUS](X1,X2) = X1 + X2 19.93/21.23 [PROD](X) = 0 19.93/21.23 [SUM](X) = 0 19.93/21.23 [UNION](X1,X2) = 0 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(0(X),1(Y)) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> U141#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 ->Strongly Connected Components: 19.93/21.23 ->->Cycle: 19.93/21.23 ->->-> Pairs: 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> FAxioms: 19.93/21.23 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) -> mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) -> plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) -> union(x7,x6) 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 ->->-> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 Reduction Pairs Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U151#(tt,X,Y) -> PLUS(plus(X,Y),1(z)) 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.23 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 -> EAxioms: 19.93/21.23 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.23 mult(x6,x7) = mult(x7,x6) 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.23 union(x6,x7) = union(x7,x6) 19.93/21.23 -> Usable Equations: 19.93/21.23 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.23 plus(x6,x7) = plus(x7,x6) 19.93/21.23 -> Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U161(tt,X) -> X 19.93/21.23 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.23 U181(tt,X) -> X 19.93/21.23 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 U91(tt) -> z 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 prod(empty) -> 1(z) 19.93/21.23 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.23 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.23 sum(empty) -> 0(z) 19.93/21.23 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.23 union(empty,X) -> X 19.93/21.23 union(X,empty) -> X 19.93/21.23 -> Usable Rules: 19.93/21.23 0(z) -> z 19.93/21.23 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.23 U12(tt) -> tt 19.93/21.23 U121(tt,X) -> X 19.93/21.23 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.23 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.23 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.23 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.23 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.23 U23(tt) -> tt 19.93/21.23 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.23 U32(tt) -> tt 19.93/21.23 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.23 U42(tt) -> tt 19.93/21.23 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.23 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.23 U53(tt) -> tt 19.93/21.23 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.23 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.23 U63(tt) -> tt 19.93/21.23 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.23 U72(tt) -> tt 19.93/21.23 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.23 U82(tt) -> tt 19.93/21.23 and(tt,X) -> X 19.93/21.23 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.23 isBag(empty) -> tt 19.93/21.23 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.23 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.23 isBagKind(empty) -> tt 19.93/21.23 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.23 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.23 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.23 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.23 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.23 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.23 isBin(z) -> tt 19.93/21.23 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.23 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.23 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.23 isBinKind(z) -> tt 19.93/21.23 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.23 -> SRules: 19.93/21.23 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.23 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.23 ->Interpretation type: 19.93/21.23 Linear 19.93/21.23 ->Coefficients: 19.93/21.23 Natural Numbers 19.93/21.23 ->Dimension: 19.93/21.23 1 19.93/21.23 ->Bound: 19.93/21.23 2 19.93/21.23 ->Interpretation: 19.93/21.23 19.93/21.23 [0](X) = X + 2 19.93/21.23 [U101](X1,X2,X3) = 0 19.93/21.23 [U11](X1,X2) = X1 19.93/21.23 [U111](X1,X2,X3) = 0 19.93/21.23 [U12](X) = 2 19.93/21.23 [U121](X1,X2) = X2 19.93/21.23 [U131](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U141](X1,X2,X3) = X2 + X3 + 2 19.93/21.23 [U151](X1,X2,X3) = 2.X1 + X2 + X3 19.93/21.23 [U161](X1,X2) = 0 19.93/21.23 [U171](X1,X2,X3) = 0 19.93/21.23 [U181](X1,X2) = 0 19.93/21.23 [U191](X1,X2,X3) = 0 19.93/21.23 [U21](X1,X2,X3) = X1 19.93/21.23 [U22](X1,X2) = 2 19.93/21.23 [U23](X) = X 19.93/21.23 [U31](X1,X2) = 2.X1 + X2 19.93/21.23 [U32](X) = 2 19.93/21.23 [U41](X1,X2) = 2.X1 + 2.X2 19.93/21.23 [U42](X) = 2 19.93/21.23 [U51](X1,X2,X3) = X1 + 2 19.93/21.23 [U52](X1,X2) = 2 19.93/21.23 [U53](X) = 2 19.93/21.23 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.23 [U62](X1,X2) = 2.X2 + 2 19.93/21.23 [U63](X) = 2 19.93/21.23 [U71](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.23 [U72](X) = 2 19.93/21.23 [U81](X1,X2) = 2.X1 + 2 19.93/21.23 [U82](X) = 2.X + 2 19.93/21.23 [U91](X) = 0 19.93/21.23 [and](X1,X2) = X2 19.93/21.23 [isBag](X) = 2 19.93/21.23 [isBagKind](X) = 2 19.93/21.23 [isBin](X) = 2.X + 2 19.93/21.23 [isBinKind](X) = 2 19.93/21.23 [mult](X1,X2) = 2 19.93/21.23 [plus](X1,X2) = X1 + X2 19.93/21.23 [prod](X) = 2.X + 2 19.93/21.23 [sum](X) = 2.X + 2 19.93/21.23 [union](X1,X2) = X1 + X2 + 2 19.93/21.23 [1](X) = X + 2 19.93/21.23 [empty] = 1 19.93/21.23 [singl](X) = 2.X 19.93/21.23 [tt] = 2 19.93/21.23 [z] = 0 19.93/21.23 [0#](X) = 0 19.93/21.23 [U101#](X1,X2,X3) = 0 19.93/21.23 [U11#](X1,X2) = 0 19.93/21.23 [U111#](X1,X2,X3) = 0 19.93/21.23 [U12#](X) = 0 19.93/21.23 [U121#](X1,X2) = 0 19.93/21.23 [U131#](X1,X2,X3) = 0 19.93/21.23 [U141#](X1,X2,X3) = 0 19.93/21.23 [U151#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.23 [U161#](X1,X2) = 0 19.93/21.23 [U171#](X1,X2,X3) = 0 19.93/21.23 [U181#](X1,X2) = 0 19.93/21.23 [U191#](X1,X2,X3) = 0 19.93/21.23 [U21#](X1,X2,X3) = 0 19.93/21.23 [U22#](X1,X2) = 0 19.93/21.23 [U23#](X) = 0 19.93/21.23 [U31#](X1,X2) = 0 19.93/21.23 [U32#](X) = 0 19.93/21.23 [U41#](X1,X2) = 0 19.93/21.23 [U42#](X) = 0 19.93/21.23 [U51#](X1,X2,X3) = 0 19.93/21.23 [U52#](X1,X2) = 0 19.93/21.23 [U53#](X) = 0 19.93/21.23 [U61#](X1,X2,X3) = 0 19.93/21.23 [U62#](X1,X2) = 0 19.93/21.23 [U63#](X) = 0 19.93/21.23 [U71#](X1,X2) = 0 19.93/21.23 [U72#](X) = 0 19.93/21.23 [U81#](X1,X2) = 0 19.93/21.23 [U82#](X) = 0 19.93/21.23 [U91#](X) = 0 19.93/21.23 [AND](X1,X2) = 0 19.93/21.23 [ISBAG](X) = 0 19.93/21.23 [ISBAGKIND](X) = 0 19.93/21.23 [ISBIN](X) = 0 19.93/21.23 [ISBINKIND](X) = 0 19.93/21.23 [MULT](X1,X2) = 0 19.93/21.23 [PLUS](X1,X2) = 2.X1 + 2.X2 + 1 19.93/21.23 [PROD](X) = 0 19.93/21.23 [SUM](X) = 0 19.93/21.23 [UNION](X1,X2) = 0 19.93/21.23 19.93/21.23 Problem 1.4: 19.93/21.23 19.93/21.23 SCC Processor: 19.93/21.23 -> FAxioms: 19.93/21.23 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.23 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.23 -> Pairs: 19.93/21.23 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.23 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.23 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.23 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Strongly Connected Components: 19.93/21.24 ->->Cycle: 19.93/21.24 ->->-> Pairs: 19.93/21.24 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.24 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 -> FAxioms: 19.93/21.24 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) -> mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) -> plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) -> union(x7,x6) 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 ->->-> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 Reduction Pairs Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 U151#(tt,X,Y) -> PLUS(X,Y) 19.93/21.24 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Usable Equations: 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> Usable Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Interpretation type: 19.93/21.24 Linear 19.93/21.24 ->Coefficients: 19.93/21.24 Natural Numbers 19.93/21.24 ->Dimension: 19.93/21.24 1 19.93/21.24 ->Bound: 19.93/21.24 2 19.93/21.24 ->Interpretation: 19.93/21.24 19.93/21.24 [0](X) = X + 1 19.93/21.24 [U101](X1,X2,X3) = 0 19.93/21.24 [U11](X1,X2) = 2.X1 19.93/21.24 [U111](X1,X2,X3) = 0 19.93/21.24 [U12](X) = 2 19.93/21.24 [U121](X1,X2) = X2 + 1 19.93/21.24 [U131](X1,X2,X3) = X1 + X2 + X3 + 1 19.93/21.24 [U141](X1,X2,X3) = 2.X1 + X2 + X3 19.93/21.24 [U151](X1,X2,X3) = 2.X1 + X2 + X3 + 1 19.93/21.24 [U161](X1,X2) = 0 19.93/21.24 [U171](X1,X2,X3) = 0 19.93/21.24 [U181](X1,X2) = 0 19.93/21.24 [U191](X1,X2,X3) = 0 19.93/21.24 [U21](X1,X2,X3) = X1 + X3 + 2 19.93/21.24 [U22](X1,X2) = 2 19.93/21.24 [U23](X) = 2 19.93/21.24 [U31](X1,X2) = X1 + 2.X2 + 2 19.93/21.24 [U32](X) = X + 2 19.93/21.24 [U41](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [U42](X) = X + 2 19.93/21.24 [U51](X1,X2,X3) = 2.X2 + 2 19.93/21.24 [U52](X1,X2) = X1 19.93/21.24 [U53](X) = 2 19.93/21.24 [U61](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 1 19.93/21.24 [U62](X1,X2) = X1 + 2.X2 + 1 19.93/21.24 [U63](X) = 2 19.93/21.24 [U71](X1,X2) = 2.X1 + 1 19.93/21.24 [U72](X) = 2 19.93/21.24 [U81](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [U82](X) = 2.X + 2 19.93/21.24 [U91](X) = 0 19.93/21.24 [and](X1,X2) = X2 19.93/21.24 [isBag](X) = X + 2 19.93/21.24 [isBagKind](X) = 2 19.93/21.24 [isBin](X) = 2.X + 2 19.93/21.24 [isBinKind](X) = 2 19.93/21.24 [mult](X1,X2) = 2.X1 + 1 19.93/21.24 [plus](X1,X2) = X1 + X2 + 1 19.93/21.24 [prod](X) = 2 19.93/21.24 [sum](X) = X + 2 19.93/21.24 [union](X1,X2) = 2.X2 + 2 19.93/21.24 [1](X) = X + 2 19.93/21.24 [empty] = 2 19.93/21.24 [singl](X) = X + 2 19.93/21.24 [tt] = 2 19.93/21.24 [z] = 0 19.93/21.24 [0#](X) = 0 19.93/21.24 [U101#](X1,X2,X3) = 0 19.93/21.24 [U11#](X1,X2) = 0 19.93/21.24 [U111#](X1,X2,X3) = 0 19.93/21.24 [U12#](X) = 0 19.93/21.24 [U121#](X1,X2) = 0 19.93/21.24 [U131#](X1,X2,X3) = 0 19.93/21.24 [U141#](X1,X2,X3) = 0 19.93/21.24 [U151#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 1 19.93/21.24 [U161#](X1,X2) = 0 19.93/21.24 [U171#](X1,X2,X3) = 0 19.93/21.24 [U181#](X1,X2) = 0 19.93/21.24 [U191#](X1,X2,X3) = 0 19.93/21.24 [U21#](X1,X2,X3) = 0 19.93/21.24 [U22#](X1,X2) = 0 19.93/21.24 [U23#](X) = 0 19.93/21.24 [U31#](X1,X2) = 0 19.93/21.24 [U32#](X) = 0 19.93/21.24 [U41#](X1,X2) = 0 19.93/21.24 [U42#](X) = 0 19.93/21.24 [U51#](X1,X2,X3) = 0 19.93/21.24 [U52#](X1,X2) = 0 19.93/21.24 [U53#](X) = 0 19.93/21.24 [U61#](X1,X2,X3) = 0 19.93/21.24 [U62#](X1,X2) = 0 19.93/21.24 [U63#](X) = 0 19.93/21.24 [U71#](X1,X2) = 0 19.93/21.24 [U72#](X) = 0 19.93/21.24 [U81#](X1,X2) = 0 19.93/21.24 [U82#](X) = 0 19.93/21.24 [U91#](X) = 0 19.93/21.24 [AND](X1,X2) = 0 19.93/21.24 [ISBAG](X) = 0 19.93/21.24 [ISBAGKIND](X) = 0 19.93/21.24 [ISBIN](X) = 0 19.93/21.24 [ISBINKIND](X) = 0 19.93/21.24 [MULT](X1,X2) = 0 19.93/21.24 [PLUS](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [PROD](X) = 0 19.93/21.24 [SUM](X) = 0 19.93/21.24 [UNION](X1,X2) = 0 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 SCC Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 PLUS(1(X),1(Y)) -> U151#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Strongly Connected Components: 19.93/21.24 ->->Cycle: 19.93/21.24 ->->-> Pairs: 19.93/21.24 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> FAxioms: 19.93/21.24 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) -> mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) -> plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) -> union(x7,x6) 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 ->->-> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 Reduction Pairs Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(0(X),0(Y)),x6) -> PLUS(U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Usable Equations: 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> Usable Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Interpretation type: 19.93/21.24 Linear 19.93/21.24 ->Coefficients: 19.93/21.24 Natural Numbers 19.93/21.24 ->Dimension: 19.93/21.24 1 19.93/21.24 ->Bound: 19.93/21.24 2 19.93/21.24 ->Interpretation: 19.93/21.24 19.93/21.24 [0](X) = X + 1 19.93/21.24 [U101](X1,X2,X3) = 0 19.93/21.24 [U11](X1,X2) = X1 + 1 19.93/21.24 [U111](X1,X2,X3) = 0 19.93/21.24 [U12](X) = X + 1 19.93/21.24 [U121](X1,X2) = X2 19.93/21.24 [U131](X1,X2,X3) = X2 + X3 + 2 19.93/21.24 [U141](X1,X2,X3) = X1 + X2 + X3 + 2 19.93/21.24 [U151](X1,X2,X3) = 2.X1 + X2 + X3 + 1 19.93/21.24 [U161](X1,X2) = 0 19.93/21.24 [U171](X1,X2,X3) = 0 19.93/21.24 [U181](X1,X2) = 0 19.93/21.24 [U191](X1,X2,X3) = 0 19.93/21.24 [U21](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.24 [U22](X1,X2) = 2.X1 + 2.X2 19.93/21.24 [U23](X) = 2.X + 2 19.93/21.24 [U31](X1,X2) = 2 19.93/21.24 [U32](X) = X 19.93/21.24 [U41](X1,X2) = 2 19.93/21.24 [U42](X) = X 19.93/21.24 [U51](X1,X2,X3) = X1 19.93/21.24 [U52](X1,X2) = X1 19.93/21.24 [U53](X) = 2 19.93/21.24 [U61](X1,X2,X3) = 2 19.93/21.24 [U62](X1,X2) = 2 19.93/21.24 [U63](X) = 2 19.93/21.24 [U71](X1,X2) = 2 19.93/21.24 [U72](X) = 2 19.93/21.24 [U81](X1,X2) = X1 19.93/21.24 [U82](X) = 2 19.93/21.24 [U91](X) = 0 19.93/21.24 [and](X1,X2) = X2 19.93/21.24 [isBag](X) = X + 1 19.93/21.24 [isBagKind](X) = 2 19.93/21.24 [isBin](X) = 2 19.93/21.24 [isBinKind](X) = 2 19.93/21.24 [mult](X1,X2) = X2 + 2 19.93/21.24 [plus](X1,X2) = X1 + X2 + 1 19.93/21.24 [prod](X) = X + 2 19.93/21.24 [sum](X) = 2 19.93/21.24 [union](X1,X2) = 2.X1 + 2.X2 + 1 19.93/21.24 [1](X) = X + 2 19.93/21.24 [empty] = 1 19.93/21.24 [singl](X) = X + 2 19.93/21.24 [tt] = 2 19.93/21.24 [z] = 0 19.93/21.24 [0#](X) = 0 19.93/21.24 [U101#](X1,X2,X3) = 0 19.93/21.24 [U11#](X1,X2) = 0 19.93/21.24 [U111#](X1,X2,X3) = 0 19.93/21.24 [U12#](X) = 0 19.93/21.24 [U121#](X1,X2) = 0 19.93/21.24 [U131#](X1,X2,X3) = 0 19.93/21.24 [U141#](X1,X2,X3) = 0 19.93/21.24 [U151#](X1,X2,X3) = 0 19.93/21.24 [U161#](X1,X2) = 0 19.93/21.24 [U171#](X1,X2,X3) = 0 19.93/21.24 [U181#](X1,X2) = 0 19.93/21.24 [U191#](X1,X2,X3) = 0 19.93/21.24 [U21#](X1,X2,X3) = 0 19.93/21.24 [U22#](X1,X2) = 0 19.93/21.24 [U23#](X) = 0 19.93/21.24 [U31#](X1,X2) = 0 19.93/21.24 [U32#](X) = 0 19.93/21.24 [U41#](X1,X2) = 0 19.93/21.24 [U42#](X) = 0 19.93/21.24 [U51#](X1,X2,X3) = 0 19.93/21.24 [U52#](X1,X2) = 0 19.93/21.24 [U53#](X) = 0 19.93/21.24 [U61#](X1,X2,X3) = 0 19.93/21.24 [U62#](X1,X2) = 0 19.93/21.24 [U63#](X) = 0 19.93/21.24 [U71#](X1,X2) = 0 19.93/21.24 [U72#](X) = 0 19.93/21.24 [U81#](X1,X2) = 0 19.93/21.24 [U82#](X) = 0 19.93/21.24 [U91#](X) = 0 19.93/21.24 [AND](X1,X2) = 0 19.93/21.24 [ISBAG](X) = 0 19.93/21.24 [ISBAGKIND](X) = 0 19.93/21.24 [ISBIN](X) = 0 19.93/21.24 [ISBINKIND](X) = 0 19.93/21.24 [MULT](X1,X2) = 0 19.93/21.24 [PLUS](X1,X2) = 2.X1 + 2.X2 19.93/21.24 [PROD](X) = 0 19.93/21.24 [SUM](X) = 0 19.93/21.24 [UNION](X1,X2) = 0 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 SCC Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Strongly Connected Components: 19.93/21.24 ->->Cycle: 19.93/21.24 ->->-> Pairs: 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> FAxioms: 19.93/21.24 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) -> mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) -> plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) -> union(x7,x6) 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 ->->-> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 Reduction Pairs Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(0(X),1(Y)),x6) -> PLUS(U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Usable Equations: 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> Usable Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Interpretation type: 19.93/21.24 Linear 19.93/21.24 ->Coefficients: 19.93/21.24 Natural Numbers 19.93/21.24 ->Dimension: 19.93/21.24 1 19.93/21.24 ->Bound: 19.93/21.24 2 19.93/21.24 ->Interpretation: 19.93/21.24 19.93/21.24 [0](X) = X + 1 19.93/21.24 [U101](X1,X2,X3) = 0 19.93/21.24 [U11](X1,X2) = 2.X1 19.93/21.24 [U111](X1,X2,X3) = 0 19.93/21.24 [U12](X) = 2 19.93/21.24 [U121](X1,X2) = X2 19.93/21.24 [U131](X1,X2,X3) = X2 + X3 + 2 19.93/21.24 [U141](X1,X2,X3) = X2 + X3 + 1 19.93/21.24 [U151](X1,X2,X3) = X2 + X3 + 2 19.93/21.24 [U161](X1,X2) = 0 19.93/21.24 [U171](X1,X2,X3) = 0 19.93/21.24 [U181](X1,X2) = 0 19.93/21.24 [U191](X1,X2,X3) = 0 19.93/21.24 [U21](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.24 [U22](X1,X2) = X1 + 2.X2 + 2 19.93/21.24 [U23](X) = 2 19.93/21.24 [U31](X1,X2) = X1 + 2 19.93/21.24 [U32](X) = 2 19.93/21.24 [U41](X1,X2) = X1 19.93/21.24 [U42](X) = 2 19.93/21.24 [U51](X1,X2,X3) = X1 + 2.X3 19.93/21.24 [U52](X1,X2) = 2.X2 + 2 19.93/21.24 [U53](X) = 2 19.93/21.24 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.24 [U62](X1,X2) = X1 + 2.X2 19.93/21.24 [U63](X) = 2 19.93/21.24 [U71](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [U72](X) = X + 2 19.93/21.24 [U81](X1,X2) = 2.X2 + 2 19.93/21.24 [U82](X) = X + 1 19.93/21.24 [U91](X) = 0 19.93/21.24 [and](X1,X2) = X2 19.93/21.24 [isBag](X) = 2.X 19.93/21.24 [isBagKind](X) = X 19.93/21.24 [isBin](X) = 2.X + 2 19.93/21.24 [isBinKind](X) = 2.X + 2 19.93/21.24 [mult](X1,X2) = 2.X2 + 1 19.93/21.24 [plus](X1,X2) = X1 + X2 19.93/21.24 [prod](X) = 2.X + 2 19.93/21.24 [sum](X) = 2.X + 2 19.93/21.24 [union](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [1](X) = X + 1 19.93/21.24 [empty] = 2 19.93/21.24 [singl](X) = 2.X + 2 19.93/21.24 [tt] = 2 19.93/21.24 [z] = 0 19.93/21.24 [0#](X) = 0 19.93/21.24 [U101#](X1,X2,X3) = 0 19.93/21.24 [U11#](X1,X2) = 0 19.93/21.24 [U111#](X1,X2,X3) = 0 19.93/21.24 [U12#](X) = 0 19.93/21.24 [U121#](X1,X2) = 0 19.93/21.24 [U131#](X1,X2,X3) = 0 19.93/21.24 [U141#](X1,X2,X3) = 0 19.93/21.24 [U151#](X1,X2,X3) = 0 19.93/21.24 [U161#](X1,X2) = 0 19.93/21.24 [U171#](X1,X2,X3) = 0 19.93/21.24 [U181#](X1,X2) = 0 19.93/21.24 [U191#](X1,X2,X3) = 0 19.93/21.24 [U21#](X1,X2,X3) = 0 19.93/21.24 [U22#](X1,X2) = 0 19.93/21.24 [U23#](X) = 0 19.93/21.24 [U31#](X1,X2) = 0 19.93/21.24 [U32#](X) = 0 19.93/21.24 [U41#](X1,X2) = 0 19.93/21.24 [U42#](X) = 0 19.93/21.24 [U51#](X1,X2,X3) = 0 19.93/21.24 [U52#](X1,X2) = 0 19.93/21.24 [U53#](X) = 0 19.93/21.24 [U61#](X1,X2,X3) = 0 19.93/21.24 [U62#](X1,X2) = 0 19.93/21.24 [U63#](X) = 0 19.93/21.24 [U71#](X1,X2) = 0 19.93/21.24 [U72#](X) = 0 19.93/21.24 [U81#](X1,X2) = 0 19.93/21.24 [U82#](X) = 0 19.93/21.24 [U91#](X) = 0 19.93/21.24 [AND](X1,X2) = 0 19.93/21.24 [ISBAG](X) = 0 19.93/21.24 [ISBAGKIND](X) = 0 19.93/21.24 [ISBIN](X) = 0 19.93/21.24 [ISBINKIND](X) = 0 19.93/21.24 [MULT](X1,X2) = 0 19.93/21.24 [PLUS](X1,X2) = 2.X1 + 2.X2 19.93/21.24 [PROD](X) = 0 19.93/21.24 [SUM](X) = 0 19.93/21.24 [UNION](X1,X2) = 0 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 SCC Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Strongly Connected Components: 19.93/21.24 ->->Cycle: 19.93/21.24 ->->-> Pairs: 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> FAxioms: 19.93/21.24 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) -> mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) -> plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) -> union(x7,x6) 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 ->->-> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 Reduction Pairs Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(1(X),1(Y)),x6) -> PLUS(U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Usable Equations: 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> Usable Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Interpretation type: 19.93/21.24 Linear 19.93/21.24 ->Coefficients: 19.93/21.24 Natural Numbers 19.93/21.24 ->Dimension: 19.93/21.24 1 19.93/21.24 ->Bound: 19.93/21.24 2 19.93/21.24 ->Interpretation: 19.93/21.24 19.93/21.24 [0](X) = 1 19.93/21.24 [U101](X1,X2,X3) = 0 19.93/21.24 [U11](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.24 [U111](X1,X2,X3) = 0 19.93/21.24 [U12](X) = X + 1 19.93/21.24 [U121](X1,X2) = X2 + 2 19.93/21.24 [U131](X1,X2,X3) = 1 19.93/21.24 [U141](X1,X2,X3) = 2 19.93/21.24 [U151](X1,X2,X3) = X1 + 2 19.93/21.24 [U161](X1,X2) = 0 19.93/21.24 [U171](X1,X2,X3) = 0 19.93/21.24 [U181](X1,X2) = 0 19.93/21.24 [U191](X1,X2,X3) = 0 19.93/21.24 [U21](X1,X2,X3) = 2.X1 + 2.X3 + 2 19.93/21.24 [U22](X1,X2) = X2 + 2 19.93/21.24 [U23](X) = 2 19.93/21.24 [U31](X1,X2) = 2.X1 + 1 19.93/21.24 [U32](X) = X 19.93/21.24 [U41](X1,X2) = 2.X1 + 1 19.93/21.24 [U42](X) = 1 19.93/21.24 [U51](X1,X2,X3) = 2.X1 + 1 19.93/21.24 [U52](X1,X2) = X1 19.93/21.24 [U53](X) = 0 19.93/21.24 [U61](X1,X2,X3) = 2.X1 + 1 19.93/21.24 [U62](X1,X2) = 1 19.93/21.24 [U63](X) = 1 19.93/21.24 [U71](X1,X2) = 2.X1 + 1 19.93/21.24 [U72](X) = 1 19.93/21.24 [U81](X1,X2) = 2.X1 + 1 19.93/21.24 [U82](X) = 0 19.93/21.24 [U91](X) = 0 19.93/21.24 [and](X1,X2) = X1 + 2.X2 19.93/21.24 [isBag](X) = 2.X + 2 19.93/21.24 [isBagKind](X) = 0 19.93/21.24 [isBin](X) = 1 19.93/21.24 [isBinKind](X) = 0 19.93/21.24 [mult](X1,X2) = 2.X1 + 2.X2 19.93/21.24 [plus](X1,X2) = X1 + X2 + 2 19.93/21.24 [prod](X) = 2.X + 2 19.93/21.24 [sum](X) = 2.X + 2 19.93/21.24 [union](X1,X2) = X2 + 2 19.93/21.24 [1](X) = 2 19.93/21.24 [empty] = 2 19.93/21.24 [singl](X) = 2.X + 2 19.93/21.24 [tt] = 0 19.93/21.24 [z] = 0 19.93/21.24 [0#](X) = 0 19.93/21.24 [U101#](X1,X2,X3) = 0 19.93/21.24 [U11#](X1,X2) = 0 19.93/21.24 [U111#](X1,X2,X3) = 0 19.93/21.24 [U12#](X) = 0 19.93/21.24 [U121#](X1,X2) = 0 19.93/21.24 [U131#](X1,X2,X3) = 0 19.93/21.24 [U141#](X1,X2,X3) = 0 19.93/21.24 [U151#](X1,X2,X3) = 0 19.93/21.24 [U161#](X1,X2) = 0 19.93/21.24 [U171#](X1,X2,X3) = 0 19.93/21.24 [U181#](X1,X2) = 0 19.93/21.24 [U191#](X1,X2,X3) = 0 19.93/21.24 [U21#](X1,X2,X3) = 0 19.93/21.24 [U22#](X1,X2) = 0 19.93/21.24 [U23#](X) = 0 19.93/21.24 [U31#](X1,X2) = 0 19.93/21.24 [U32#](X) = 0 19.93/21.24 [U41#](X1,X2) = 0 19.93/21.24 [U42#](X) = 0 19.93/21.24 [U51#](X1,X2,X3) = 0 19.93/21.24 [U52#](X1,X2) = 0 19.93/21.24 [U53#](X) = 0 19.93/21.24 [U61#](X1,X2,X3) = 0 19.93/21.24 [U62#](X1,X2) = 0 19.93/21.24 [U63#](X) = 0 19.93/21.24 [U71#](X1,X2) = 0 19.93/21.24 [U72#](X) = 0 19.93/21.24 [U81#](X1,X2) = 0 19.93/21.24 [U82#](X) = 0 19.93/21.24 [U91#](X) = 0 19.93/21.24 [AND](X1,X2) = 0 19.93/21.24 [ISBAG](X) = 0 19.93/21.24 [ISBAGKIND](X) = 0 19.93/21.24 [ISBIN](X) = 0 19.93/21.24 [ISBINKIND](X) = 0 19.93/21.24 [MULT](X1,X2) = 0 19.93/21.24 [PLUS](X1,X2) = X1 + X2 19.93/21.24 [PROD](X) = 0 19.93/21.24 [SUM](X) = 0 19.93/21.24 [UNION](X1,X2) = 0 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 SCC Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Strongly Connected Components: 19.93/21.24 ->->Cycle: 19.93/21.24 ->->-> Pairs: 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> FAxioms: 19.93/21.24 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) -> mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) -> plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) -> union(x7,x6) 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) -> PLUS(x7,x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 ->->-> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 19.93/21.24 Problem 1.4: 19.93/21.24 19.93/21.24 Reduction Pairs Processor: 19.93/21.24 -> FAxioms: 19.93/21.24 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.24 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.24 -> Pairs: 19.93/21.24 PLUS(plus(z,X),x6) -> PLUS(U121(and(isBin(X),isBinKind(X)),X),x6) 19.93/21.24 -> EAxioms: 19.93/21.24 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.24 mult(x6,x7) = mult(x7,x6) 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.24 union(x6,x7) = union(x7,x6) 19.93/21.24 -> Usable Equations: 19.93/21.24 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.24 plus(x6,x7) = plus(x7,x6) 19.93/21.24 -> Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U161(tt,X) -> X 19.93/21.24 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.24 U181(tt,X) -> X 19.93/21.24 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 U91(tt) -> z 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 prod(empty) -> 1(z) 19.93/21.24 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.24 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.24 sum(empty) -> 0(z) 19.93/21.24 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.24 union(empty,X) -> X 19.93/21.24 union(X,empty) -> X 19.93/21.24 -> Usable Rules: 19.93/21.24 0(z) -> z 19.93/21.24 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.24 U12(tt) -> tt 19.93/21.24 U121(tt,X) -> X 19.93/21.24 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.24 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.24 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.24 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.24 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.24 U23(tt) -> tt 19.93/21.24 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.24 U32(tt) -> tt 19.93/21.24 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.24 U42(tt) -> tt 19.93/21.24 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.24 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.24 U53(tt) -> tt 19.93/21.24 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.24 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.24 U63(tt) -> tt 19.93/21.24 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.24 U72(tt) -> tt 19.93/21.24 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.24 U82(tt) -> tt 19.93/21.24 and(tt,X) -> X 19.93/21.24 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.24 isBag(empty) -> tt 19.93/21.24 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.24 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.24 isBagKind(empty) -> tt 19.93/21.24 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.24 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.24 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.24 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.24 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.24 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.24 isBin(z) -> tt 19.93/21.24 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.24 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.24 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.24 isBinKind(z) -> tt 19.93/21.24 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.24 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.24 -> SRules: 19.93/21.24 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.24 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.24 ->Interpretation type: 19.93/21.24 Linear 19.93/21.24 ->Coefficients: 19.93/21.24 Natural Numbers 19.93/21.24 ->Dimension: 19.93/21.24 1 19.93/21.24 ->Bound: 19.93/21.24 2 19.93/21.24 ->Interpretation: 19.93/21.24 19.93/21.24 [0](X) = 2 19.93/21.24 [U101](X1,X2,X3) = 0 19.93/21.24 [U11](X1,X2) = 2 19.93/21.24 [U111](X1,X2,X3) = 0 19.93/21.24 [U12](X) = 2 19.93/21.24 [U121](X1,X2) = X2 + 1 19.93/21.24 [U131](X1,X2,X3) = 2 19.93/21.24 [U141](X1,X2,X3) = 2.X1 + 2 19.93/21.24 [U151](X1,X2,X3) = 2 19.93/21.24 [U161](X1,X2) = 0 19.93/21.24 [U171](X1,X2,X3) = 0 19.93/21.24 [U181](X1,X2) = 0 19.93/21.24 [U191](X1,X2,X3) = 0 19.93/21.24 [U21](X1,X2,X3) = X1 19.93/21.24 [U22](X1,X2) = 2 19.93/21.24 [U23](X) = 2 19.93/21.24 [U31](X1,X2) = X1 + 2 19.93/21.24 [U32](X) = 2 19.93/21.24 [U41](X1,X2) = X1 19.93/21.24 [U42](X) = 2 19.93/21.24 [U51](X1,X2,X3) = 2.X1 19.93/21.24 [U52](X1,X2) = 2 19.93/21.24 [U53](X) = 2 19.93/21.24 [U61](X1,X2,X3) = X1 + X2 + X3 + 2 19.93/21.24 [U62](X1,X2) = X2 + 2 19.93/21.24 [U63](X) = 2 19.93/21.24 [U71](X1,X2) = X1 + 1 19.93/21.24 [U72](X) = 2 19.93/21.24 [U81](X1,X2) = 2 19.93/21.24 [U82](X) = X 19.93/21.24 [U91](X) = 0 19.93/21.24 [and](X1,X2) = X2 19.93/21.24 [isBag](X) = 2 19.93/21.24 [isBagKind](X) = 2 19.93/21.24 [isBin](X) = X + 2 19.93/21.24 [isBinKind](X) = 2 19.93/21.24 [mult](X1,X2) = 2 19.93/21.24 [plus](X1,X2) = X1 + X2 + 2 19.93/21.24 [prod](X) = 1 19.93/21.24 [sum](X) = 0 19.93/21.24 [union](X1,X2) = 2.X1 + X2 19.93/21.24 [1](X) = 2 19.93/21.24 [empty] = 2 19.93/21.24 [singl](X) = 2.X 19.93/21.24 [tt] = 2 19.93/21.24 [z] = 1 19.93/21.24 [0#](X) = 0 19.93/21.24 [U101#](X1,X2,X3) = 0 19.93/21.24 [U11#](X1,X2) = 0 19.93/21.24 [U111#](X1,X2,X3) = 0 19.93/21.24 [U12#](X) = 0 19.93/21.24 [U121#](X1,X2) = 0 19.93/21.24 [U131#](X1,X2,X3) = 0 19.93/21.24 [U141#](X1,X2,X3) = 0 19.93/21.24 [U151#](X1,X2,X3) = 0 19.93/21.24 [U161#](X1,X2) = 0 19.93/21.24 [U171#](X1,X2,X3) = 0 19.93/21.24 [U181#](X1,X2) = 0 19.93/21.24 [U191#](X1,X2,X3) = 0 19.93/21.24 [U21#](X1,X2,X3) = 0 19.93/21.24 [U22#](X1,X2) = 0 19.93/21.24 [U23#](X) = 0 19.93/21.24 [U31#](X1,X2) = 0 19.93/21.24 [U32#](X) = 0 19.93/21.24 [U41#](X1,X2) = 0 19.93/21.24 [U42#](X) = 0 19.93/21.24 [U51#](X1,X2,X3) = 0 19.93/21.24 [U52#](X1,X2) = 0 19.93/21.24 [U53#](X) = 0 19.93/21.24 [U61#](X1,X2,X3) = 0 19.93/21.24 [U62#](X1,X2) = 0 19.93/21.24 [U63#](X) = 0 19.93/21.24 [U71#](X1,X2) = 0 19.93/21.25 [U72#](X) = 0 19.93/21.25 [U81#](X1,X2) = 0 19.93/21.25 [U82#](X) = 0 19.93/21.25 [U91#](X) = 0 19.93/21.25 [AND](X1,X2) = 0 19.93/21.25 [ISBAG](X) = 0 19.93/21.25 [ISBAGKIND](X) = 0 19.93/21.25 [ISBIN](X) = 0 19.93/21.25 [ISBINKIND](X) = 0 19.93/21.25 [MULT](X1,X2) = 0 19.93/21.25 [PLUS](X1,X2) = 2.X1 + 2.X2 19.93/21.25 [PROD](X) = 0 19.93/21.25 [SUM](X) = 0 19.93/21.25 [UNION](X1,X2) = 0 19.93/21.25 19.93/21.25 Problem 1.4: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 PLUS(plus(x6,x7),x8) = PLUS(x6,plus(x7,x8)) 19.93/21.25 PLUS(x6,x7) = PLUS(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 Empty 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 PLUS(plus(x6,x7),x8) -> PLUS(x6,x7) 19.93/21.25 PLUS(x6,plus(x7,x8)) -> PLUS(x7,x8) 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 There is no strongly connected component 19.93/21.25 19.93/21.25 The problem is finite. 19.93/21.25 19.93/21.25 Problem 1.5: 19.93/21.25 19.93/21.25 Reduction Pairs Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 Empty 19.93/21.25 -> Pairs: 19.93/21.25 U191#(tt,A,B) -> SUM(A) 19.93/21.25 U191#(tt,A,B) -> SUM(B) 19.93/21.25 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Usable Equations: 19.93/21.25 Empty 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> Usable Rules: 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 -> SRules: 19.93/21.25 Empty 19.93/21.25 ->Interpretation type: 19.93/21.25 Linear 19.93/21.25 ->Coefficients: 19.93/21.25 Natural Numbers 19.93/21.25 ->Dimension: 19.93/21.25 1 19.93/21.25 ->Bound: 19.93/21.25 2 19.93/21.25 ->Interpretation: 19.93/21.25 19.93/21.25 [0](X) = 1 19.93/21.25 [U101](X1,X2,X3) = 0 19.93/21.25 [U11](X1,X2) = X1 + 2 19.93/21.25 [U111](X1,X2,X3) = 0 19.93/21.25 [U12](X) = 2 19.93/21.25 [U121](X1,X2) = 0 19.93/21.25 [U131](X1,X2,X3) = 0 19.93/21.25 [U141](X1,X2,X3) = 0 19.93/21.25 [U151](X1,X2,X3) = 0 19.93/21.25 [U161](X1,X2) = 0 19.93/21.25 [U171](X1,X2,X3) = 0 19.93/21.25 [U181](X1,X2) = 0 19.93/21.25 [U191](X1,X2,X3) = 0 19.93/21.25 [U21](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.93/21.25 [U22](X1,X2) = X1 + 2.X2 19.93/21.25 [U23](X) = X + 1 19.93/21.25 [U31](X1,X2) = X1 19.93/21.25 [U32](X) = 2 19.93/21.25 [U41](X1,X2) = 2 19.93/21.25 [U42](X) = 2 19.93/21.25 [U51](X1,X2,X3) = 2.X3 + 2 19.93/21.25 [U52](X1,X2) = 2.X2 + 2 19.93/21.25 [U53](X) = 2 19.93/21.25 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.25 [U62](X1,X2) = 2.X1 + 2.X2 19.93/21.25 [U63](X) = 2.X + 2 19.93/21.25 [U71](X1,X2) = 2.X2 19.93/21.25 [U72](X) = X 19.93/21.25 [U81](X1,X2) = X1 + 1 19.93/21.25 [U82](X) = 2 19.93/21.25 [U91](X) = 0 19.93/21.25 [and](X1,X2) = X2 19.93/21.25 [isBag](X) = 2.X 19.93/21.25 [isBagKind](X) = 2 19.93/21.25 [isBin](X) = X + 1 19.93/21.25 [isBinKind](X) = 2 19.93/21.25 [mult](X1,X2) = X1 + 2.X2 + 2 19.93/21.25 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.25 [prod](X) = 2.X 19.93/21.25 [sum](X) = 2 19.93/21.25 [union](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.25 [1](X) = 2.X + 1 19.93/21.25 [empty] = 1 19.93/21.25 [singl](X) = 2.X + 2 19.93/21.25 [tt] = 2 19.93/21.25 [z] = 2 19.93/21.25 [0#](X) = 0 19.93/21.25 [U101#](X1,X2,X3) = 0 19.93/21.25 [U11#](X1,X2) = 0 19.93/21.25 [U111#](X1,X2,X3) = 0 19.93/21.25 [U12#](X) = 0 19.93/21.25 [U121#](X1,X2) = 0 19.93/21.25 [U131#](X1,X2,X3) = 0 19.93/21.25 [U141#](X1,X2,X3) = 0 19.93/21.25 [U151#](X1,X2,X3) = 0 19.93/21.25 [U161#](X1,X2) = 0 19.93/21.25 [U171#](X1,X2,X3) = 0 19.93/21.25 [U181#](X1,X2) = 0 19.93/21.25 [U191#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.25 [U21#](X1,X2,X3) = 0 19.93/21.25 [U22#](X1,X2) = 0 19.93/21.25 [U23#](X) = 0 19.93/21.25 [U31#](X1,X2) = 0 19.93/21.25 [U32#](X) = 0 19.93/21.25 [U41#](X1,X2) = 0 19.93/21.25 [U42#](X) = 0 19.93/21.25 [U51#](X1,X2,X3) = 0 19.93/21.25 [U52#](X1,X2) = 0 19.93/21.25 [U53#](X) = 0 19.93/21.25 [U61#](X1,X2,X3) = 0 19.93/21.25 [U62#](X1,X2) = 0 19.93/21.25 [U63#](X) = 0 19.93/21.25 [U71#](X1,X2) = 0 19.93/21.25 [U72#](X) = 0 19.93/21.25 [U81#](X1,X2) = 0 19.93/21.25 [U82#](X) = 0 19.93/21.25 [U91#](X) = 0 19.93/21.25 [AND](X1,X2) = 0 19.93/21.25 [ISBAG](X) = 0 19.93/21.25 [ISBAGKIND](X) = 0 19.93/21.25 [ISBIN](X) = 0 19.93/21.25 [ISBINKIND](X) = 0 19.93/21.25 [MULT](X1,X2) = 0 19.93/21.25 [PLUS](X1,X2) = 0 19.93/21.25 [PROD](X) = 0 19.93/21.25 [SUM](X) = 2.X + 2 19.93/21.25 [UNION](X1,X2) = 0 19.93/21.25 19.93/21.25 Problem 1.5: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 Empty 19.93/21.25 -> Pairs: 19.93/21.25 U191#(tt,A,B) -> SUM(B) 19.93/21.25 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 Empty 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 ->->Cycle: 19.93/21.25 ->->-> Pairs: 19.93/21.25 U191#(tt,A,B) -> SUM(B) 19.93/21.25 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 -> FAxioms: 19.93/21.25 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) -> mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) -> plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) -> union(x7,x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 ->->-> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 Empty 19.93/21.25 19.93/21.25 Problem 1.5: 19.93/21.25 19.93/21.25 Subterm Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 Empty 19.93/21.25 -> Pairs: 19.93/21.25 U191#(tt,A,B) -> SUM(B) 19.93/21.25 SUM(union(A,B)) -> U191#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 Empty 19.93/21.25 ->Projection: 19.93/21.25 pi(U191#) = [3] 19.93/21.25 pi(SUM) = [1] 19.93/21.25 19.93/21.25 Problem 1.5: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 Empty 19.93/21.25 -> Pairs: 19.93/21.25 U191#(tt,A,B) -> SUM(B) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 Empty 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 There is no strongly connected component 19.93/21.25 19.93/21.25 The problem is finite. 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 Reduction Pairs Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 U101#(tt,X,Y) -> MULT(X,Y) 19.93/21.25 U111#(tt,X,Y) -> MULT(X,Y) 19.93/21.25 MULT(0(X),Y) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Usable Equations: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> Usable Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Interpretation type: 19.93/21.25 Simple mixed 19.93/21.25 ->Coefficients: 19.93/21.25 Natural Numbers 19.93/21.25 ->Dimension: 19.93/21.25 1 19.93/21.25 ->Bound: 19.93/21.25 1 19.93/21.25 ->Interpretation: 19.93/21.25 19.93/21.25 [0](X) = X + 1 19.93/21.25 [U101](X1,X2,X3) = X1.X2 + X1.X3 + X2.X3 + X1 + X3 19.93/21.25 [U11](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [U111](X1,X2,X3) = X1.X2.X3 + X1.X2 + X1.X3 + X3 + 1 19.93/21.25 [U12](X) = 1 19.93/21.25 [U121](X1,X2) = X1.X2 19.93/21.25 [U131](X1,X2,X3) = X1.X2 + X1 + X3 + 1 19.93/21.25 [U141](X1,X2,X3) = X1 + X2 + X3 19.93/21.25 [U151](X1,X2,X3) = X1.X3 + X1 + X2 + 1 19.93/21.25 [U161](X1,X2) = 0 19.93/21.25 [U171](X1,X2,X3) = 0 19.93/21.25 [U181](X1,X2) = 0 19.93/21.25 [U191](X1,X2,X3) = 0 19.93/21.25 [U21](X1,X2,X3) = X1.X2.X3 + X1.X2 + X1.X3 + X2.X3 + X1 + X2 + X3 + 1 19.93/21.25 [U22](X1,X2) = X2 + 1 19.93/21.25 [U23](X) = 1 19.93/21.25 [U31](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [U32](X) = 1 19.93/21.25 [U41](X1,X2) = X1.X2 + X2 + 1 19.93/21.25 [U42](X) = 1 19.93/21.25 [U51](X1,X2,X3) = X1.X2.X3 + X1.X2 + X2.X3 + X3 + 1 19.93/21.25 [U52](X1,X2) = 1 19.93/21.25 [U53](X) = 1 19.93/21.25 [U61](X1,X2,X3) = X1.X2.X3 + X1.X2 + X2.X3 + X1 + X3 19.93/21.25 [U62](X1,X2) = X2 + 1 19.93/21.25 [U63](X) = 1 19.93/21.25 [U71](X1,X2) = X1.X2 + X1 19.93/21.25 [U72](X) = 1 19.93/21.25 [U81](X1,X2) = X1.X2 + 1 19.93/21.25 [U82](X) = 1 19.93/21.25 [U91](X) = 0 19.93/21.25 [and](X1,X2) = X2 19.93/21.25 [isBag](X) = X.X + 1 19.93/21.25 [isBagKind](X) = 1 19.93/21.25 [isBin](X) = X.X + X + 1 19.93/21.25 [isBinKind](X) = 1 19.93/21.25 [mult](X1,X2) = X1.X2 + X1 + X2 19.93/21.25 [plus](X1,X2) = X1 + X2 19.93/21.25 [prod](X) = X.X + X + 1 19.93/21.25 [sum](X) = X.X + X + 1 19.93/21.25 [union](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [1](X) = X + 1 19.93/21.25 [empty] = 0 19.93/21.25 [singl](X) = X.X + X + 1 19.93/21.25 [tt] = 1 19.93/21.25 [z] = 0 19.93/21.25 [0#](X) = 0 19.93/21.25 [U101#](X1,X2,X3) = X1.X2 + X2.X3 + X1 + X3 + 1 19.93/21.25 [U11#](X1,X2) = 0 19.93/21.25 [U111#](X1,X2,X3) = X1.X2 + X1.X3 + X2.X3 + X1 + 1 19.93/21.25 [U12#](X) = 0 19.93/21.25 [U121#](X1,X2) = 0 19.93/21.25 [U131#](X1,X2,X3) = 0 19.93/21.25 [U141#](X1,X2,X3) = 0 19.93/21.25 [U151#](X1,X2,X3) = 0 19.93/21.25 [U161#](X1,X2) = 0 19.93/21.25 [U171#](X1,X2,X3) = 0 19.93/21.25 [U181#](X1,X2) = 0 19.93/21.25 [U191#](X1,X2,X3) = 0 19.93/21.25 [U21#](X1,X2,X3) = 0 19.93/21.25 [U22#](X1,X2) = 0 19.93/21.25 [U23#](X) = 0 19.93/21.25 [U31#](X1,X2) = 0 19.93/21.25 [U32#](X) = 0 19.93/21.25 [U41#](X1,X2) = 0 19.93/21.25 [U42#](X) = 0 19.93/21.25 [U51#](X1,X2,X3) = 0 19.93/21.25 [U52#](X1,X2) = 0 19.93/21.25 [U53#](X) = 0 19.93/21.25 [U61#](X1,X2,X3) = 0 19.93/21.25 [U62#](X1,X2) = 0 19.93/21.25 [U63#](X) = 0 19.93/21.25 [U71#](X1,X2) = 0 19.93/21.25 [U72#](X) = 0 19.93/21.25 [U81#](X1,X2) = 0 19.93/21.25 [U82#](X) = 0 19.93/21.25 [U91#](X) = 0 19.93/21.25 [AND](X1,X2) = 0 19.93/21.25 [ISBAG](X) = 0 19.93/21.25 [ISBAGKIND](X) = 0 19.93/21.25 [ISBIN](X) = 0 19.93/21.25 [ISBINKIND](X) = 0 19.93/21.25 [MULT](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [PLUS](X1,X2) = 0 19.93/21.25 [PROD](X) = 0 19.93/21.25 [SUM](X) = 0 19.93/21.25 [UNION](X1,X2) = 0 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 U111#(tt,X,Y) -> MULT(X,Y) 19.93/21.25 MULT(0(X),Y) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> U101#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 ->->Cycle: 19.93/21.25 ->->-> Pairs: 19.93/21.25 U111#(tt,X,Y) -> MULT(X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 -> FAxioms: 19.93/21.25 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) -> mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) -> plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) -> union(x7,x6) 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) -> MULT(x7,x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 ->->-> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 Reduction Pairs Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 U111#(tt,X,Y) -> MULT(X,Y) 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Usable Equations: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> Usable Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Interpretation type: 19.93/21.25 Simple mixed 19.93/21.25 ->Coefficients: 19.93/21.25 Natural Numbers 19.93/21.25 ->Dimension: 19.93/21.25 1 19.93/21.25 ->Bound: 19.93/21.25 1 19.93/21.25 ->Interpretation: 19.93/21.25 19.93/21.25 [0](X) = X + 1 19.93/21.25 [U101](X1,X2,X3) = X1.X2.X3 + X1.X2 + X3 + 1 19.93/21.25 [U11](X1,X2) = X1.X2 + X1 + X2 19.93/21.25 [U111](X1,X2,X3) = X1.X2.X3 + X1.X3 + X1 + X2 + X3 19.93/21.25 [U12](X) = 1 19.93/21.25 [U121](X1,X2) = X2 19.93/21.25 [U131](X1,X2,X3) = X1.X2 + X3 + 1 19.93/21.25 [U141](X1,X2,X3) = X1.X2 + X3 + 1 19.93/21.25 [U151](X1,X2,X3) = X1.X2 + X1.X3 + X1 + 1 19.93/21.25 [U161](X1,X2) = 0 19.93/21.25 [U171](X1,X2,X3) = 0 19.93/21.25 [U181](X1,X2) = 0 19.93/21.25 [U191](X1,X2,X3) = 0 19.93/21.25 [U21](X1,X2,X3) = X1.X2.X3 + X1.X2 + X2.X3 + X1 + X2 + X3 + 1 19.93/21.25 [U22](X1,X2) = X2 + 1 19.93/21.25 [U23](X) = 1 19.93/21.25 [U31](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [U32](X) = 1 19.93/21.25 [U41](X1,X2) = X1 + X2 + 1 19.93/21.25 [U42](X) = 1 19.93/21.25 [U51](X1,X2,X3) = X1.X2.X3 + X2.X3 + X2 + X3 + 1 19.93/21.25 [U52](X1,X2) = 1 19.93/21.25 [U53](X) = 1 19.93/21.25 [U61](X1,X2,X3) = X2.X3 + X2 + X3 + 1 19.93/21.25 [U62](X1,X2) = X2 + 1 19.93/21.25 [U63](X) = 1 19.93/21.25 [U71](X1,X2) = X1.X2 + 1 19.93/21.25 [U72](X) = 1 19.93/21.25 [U81](X1,X2) = X1.X2 + 1 19.93/21.25 [U82](X) = 1 19.93/21.25 [U91](X) = 0 19.93/21.25 [and](X1,X2) = X2 19.93/21.25 [isBag](X) = X.X + X + 1 19.93/21.25 [isBagKind](X) = 1 19.93/21.25 [isBin](X) = X.X + X + 1 19.93/21.25 [isBinKind](X) = 1 19.93/21.25 [mult](X1,X2) = X1.X2 + X1 + X2 19.93/21.25 [plus](X1,X2) = X1 + X2 19.93/21.25 [prod](X) = X.X + X + 1 19.93/21.25 [sum](X) = X + 1 19.93/21.25 [union](X1,X2) = X1.X2 + X1 + X2 + 1 19.93/21.25 [1](X) = X + 1 19.93/21.25 [empty] = 1 19.93/21.25 [singl](X) = X + 1 19.93/21.25 [tt] = 1 19.93/21.25 [z] = 0 19.93/21.25 [0#](X) = 0 19.93/21.25 [U101#](X1,X2,X3) = 0 19.93/21.25 [U11#](X1,X2) = 0 19.93/21.25 [U111#](X1,X2,X3) = X1.X2 + X1.X3 + X2.X3 + 1 19.93/21.25 [U12#](X) = 0 19.93/21.25 [U121#](X1,X2) = 0 19.93/21.25 [U131#](X1,X2,X3) = 0 19.93/21.25 [U141#](X1,X2,X3) = 0 19.93/21.25 [U151#](X1,X2,X3) = 0 19.93/21.25 [U161#](X1,X2) = 0 19.93/21.25 [U171#](X1,X2,X3) = 0 19.93/21.25 [U181#](X1,X2) = 0 19.93/21.25 [U191#](X1,X2,X3) = 0 19.93/21.25 [U21#](X1,X2,X3) = 0 19.93/21.25 [U22#](X1,X2) = 0 19.93/21.25 [U23#](X) = 0 19.93/21.25 [U31#](X1,X2) = 0 19.93/21.25 [U32#](X) = 0 19.93/21.25 [U41#](X1,X2) = 0 19.93/21.25 [U42#](X) = 0 19.93/21.25 [U51#](X1,X2,X3) = 0 19.93/21.25 [U52#](X1,X2) = 0 19.93/21.25 [U53#](X) = 0 19.93/21.25 [U61#](X1,X2,X3) = 0 19.93/21.25 [U62#](X1,X2) = 0 19.93/21.25 [U63#](X) = 0 19.93/21.25 [U71#](X1,X2) = 0 19.93/21.25 [U72#](X) = 0 19.93/21.25 [U81#](X1,X2) = 0 19.93/21.25 [U82#](X) = 0 19.93/21.25 [U91#](X) = 0 19.93/21.25 [AND](X1,X2) = 0 19.93/21.25 [ISBAG](X) = 0 19.93/21.25 [ISBAGKIND](X) = 0 19.93/21.25 [ISBIN](X) = 0 19.93/21.25 [ISBINKIND](X) = 0 19.93/21.25 [MULT](X1,X2) = X1.X2 + X1 + X2 19.93/21.25 [PLUS](X1,X2) = 0 19.93/21.25 [PROD](X) = 0 19.93/21.25 [SUM](X) = 0 19.93/21.25 [UNION](X1,X2) = 0 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 MULT(1(X),Y) -> U111#(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 ->->Cycle: 19.93/21.25 ->->-> Pairs: 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 -> FAxioms: 19.93/21.25 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) -> mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) -> plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) -> union(x7,x6) 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) -> MULT(x7,x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 ->->-> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 Reduction Pairs Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 MULT(mult(0(X),Y),x6) -> MULT(U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Usable Equations: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> Usable Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Interpretation type: 19.93/21.25 Linear 19.93/21.25 ->Coefficients: 19.93/21.25 Natural Numbers 19.93/21.25 ->Dimension: 19.93/21.25 1 19.93/21.25 ->Bound: 19.93/21.25 2 19.93/21.25 ->Interpretation: 19.93/21.25 19.93/21.25 [0](X) = 2 19.93/21.25 [U101](X1,X2,X3) = X3 + 2 19.93/21.25 [U11](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.25 [U111](X1,X2,X3) = 2.X1 + X3 19.93/21.25 [U12](X) = X + 2 19.93/21.25 [U121](X1,X2) = X2 + 2 19.93/21.25 [U131](X1,X2,X3) = 2.X1 + 2 19.93/21.25 [U141](X1,X2,X3) = 2.X1 + 2 19.93/21.25 [U151](X1,X2,X3) = 2.X1 + 2 19.93/21.25 [U161](X1,X2) = 0 19.93/21.25 [U171](X1,X2,X3) = 0 19.93/21.25 [U181](X1,X2) = 0 19.93/21.25 [U191](X1,X2,X3) = 0 19.93/21.25 [U21](X1,X2,X3) = 2.X1 + 2.X2 + 1 19.93/21.25 [U22](X1,X2) = X1 + 2 19.93/21.25 [U23](X) = 2 19.93/21.25 [U31](X1,X2) = 2 19.93/21.25 [U32](X) = 2 19.93/21.25 [U41](X1,X2) = 2.X1 + 1 19.93/21.25 [U42](X) = 2 19.93/21.25 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.25 [U52](X1,X2) = X1 + 2.X2 + 2 19.93/21.25 [U53](X) = X + 2 19.93/21.25 [U61](X1,X2,X3) = X1 + 2.X2 + X3 + 2 19.93/21.25 [U62](X1,X2) = 2 19.93/21.25 [U63](X) = 2 19.93/21.25 [U71](X1,X2) = 2.X1 + 2 19.93/21.25 [U72](X) = 2 19.93/21.25 [U81](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.25 [U82](X) = X + 2 19.93/21.25 [U91](X) = 2 19.93/21.25 [and](X1,X2) = X2 19.93/21.25 [isBag](X) = 2.X + 2 19.93/21.25 [isBagKind](X) = 2 19.93/21.25 [isBin](X) = 2.X + 2 19.93/21.25 [isBinKind](X) = 2 19.93/21.25 [mult](X1,X2) = X1 + X2 + 2 19.93/21.25 [plus](X1,X2) = X1 + X2 + 2 19.93/21.25 [prod](X) = X + 2 19.93/21.25 [sum](X) = 2.X + 2 19.93/21.25 [union](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.25 [1](X) = 2 19.93/21.25 [empty] = 2 19.93/21.25 [singl](X) = 2.X + 2 19.93/21.25 [tt] = 2 19.93/21.25 [z] = 1 19.93/21.25 [0#](X) = 0 19.93/21.25 [U101#](X1,X2,X3) = 0 19.93/21.25 [U11#](X1,X2) = 0 19.93/21.25 [U111#](X1,X2,X3) = 0 19.93/21.25 [U12#](X) = 0 19.93/21.25 [U121#](X1,X2) = 0 19.93/21.25 [U131#](X1,X2,X3) = 0 19.93/21.25 [U141#](X1,X2,X3) = 0 19.93/21.25 [U151#](X1,X2,X3) = 0 19.93/21.25 [U161#](X1,X2) = 0 19.93/21.25 [U171#](X1,X2,X3) = 0 19.93/21.25 [U181#](X1,X2) = 0 19.93/21.25 [U191#](X1,X2,X3) = 0 19.93/21.25 [U21#](X1,X2,X3) = 0 19.93/21.25 [U22#](X1,X2) = 0 19.93/21.25 [U23#](X) = 0 19.93/21.25 [U31#](X1,X2) = 0 19.93/21.25 [U32#](X) = 0 19.93/21.25 [U41#](X1,X2) = 0 19.93/21.25 [U42#](X) = 0 19.93/21.25 [U51#](X1,X2,X3) = 0 19.93/21.25 [U52#](X1,X2) = 0 19.93/21.25 [U53#](X) = 0 19.93/21.25 [U61#](X1,X2,X3) = 0 19.93/21.25 [U62#](X1,X2) = 0 19.93/21.25 [U63#](X) = 0 19.93/21.25 [U71#](X1,X2) = 0 19.93/21.25 [U72#](X) = 0 19.93/21.25 [U81#](X1,X2) = 0 19.93/21.25 [U82#](X) = 0 19.93/21.25 [U91#](X) = 0 19.93/21.25 [AND](X1,X2) = 0 19.93/21.25 [ISBAG](X) = 0 19.93/21.25 [ISBAGKIND](X) = 0 19.93/21.25 [ISBIN](X) = 0 19.93/21.25 [ISBINKIND](X) = 0 19.93/21.25 [MULT](X1,X2) = 2.X1 + 2.X2 19.93/21.25 [PLUS](X1,X2) = 0 19.93/21.25 [PROD](X) = 0 19.93/21.25 [SUM](X) = 0 19.93/21.25 [UNION](X1,X2) = 0 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 SCC Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 ->Strongly Connected Components: 19.93/21.25 ->->Cycle: 19.93/21.25 ->->-> Pairs: 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 -> FAxioms: 19.93/21.25 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) -> mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) -> plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) -> union(x7,x6) 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) -> MULT(x7,x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 ->->-> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.25 isBag(empty) -> tt 19.93/21.25 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.25 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.25 isBagKind(empty) -> tt 19.93/21.25 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.25 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.25 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.25 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.25 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.25 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.25 isBin(z) -> tt 19.93/21.25 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.25 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.25 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.25 isBinKind(z) -> tt 19.93/21.25 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.25 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.25 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.25 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 prod(empty) -> 1(z) 19.93/21.25 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.25 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.25 sum(empty) -> 0(z) 19.93/21.25 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.25 union(empty,X) -> X 19.93/21.25 union(X,empty) -> X 19.93/21.25 -> SRules: 19.93/21.25 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.25 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.25 19.93/21.25 Problem 1.6: 19.93/21.25 19.93/21.25 Reduction Pairs Processor: 19.93/21.25 -> FAxioms: 19.93/21.25 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.25 MULT(x6,x7) = MULT(x7,x6) 19.93/21.25 -> Pairs: 19.93/21.25 MULT(mult(1(X),Y),x6) -> MULT(U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y),x6) 19.93/21.25 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.25 -> EAxioms: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.25 union(x6,x7) = union(x7,x6) 19.93/21.25 -> Usable Equations: 19.93/21.25 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.25 mult(x6,x7) = mult(x7,x6) 19.93/21.25 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.25 plus(x6,x7) = plus(x7,x6) 19.93/21.25 -> Rules: 19.93/21.25 0(z) -> z 19.93/21.25 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.25 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.25 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.25 U12(tt) -> tt 19.93/21.25 U121(tt,X) -> X 19.93/21.25 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.25 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.25 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.25 U161(tt,X) -> X 19.93/21.25 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.25 U181(tt,X) -> X 19.93/21.25 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.25 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.25 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.25 U23(tt) -> tt 19.93/21.25 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.25 U32(tt) -> tt 19.93/21.25 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.25 U42(tt) -> tt 19.93/21.25 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.25 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.25 U53(tt) -> tt 19.93/21.25 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.25 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.25 U63(tt) -> tt 19.93/21.25 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.25 U72(tt) -> tt 19.93/21.25 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.25 U82(tt) -> tt 19.93/21.25 U91(tt) -> z 19.93/21.25 and(tt,X) -> X 19.93/21.25 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> Usable Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 -> SRules: 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.26 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.26 ->Interpretation type: 19.93/21.26 Linear 19.93/21.26 ->Coefficients: 19.93/21.26 Natural Numbers 19.93/21.26 ->Dimension: 19.93/21.26 1 19.93/21.26 ->Bound: 19.93/21.26 2 19.93/21.26 ->Interpretation: 19.93/21.26 19.93/21.26 [0](X) = 0 19.93/21.26 [U101](X1,X2,X3) = X3 + 2 19.93/21.26 [U11](X1,X2) = X1 + 2 19.93/21.26 [U111](X1,X2,X3) = X1 + X3 19.93/21.26 [U12](X) = 2 19.93/21.26 [U121](X1,X2) = X2 + 2 19.93/21.26 [U131](X1,X2,X3) = 2 19.93/21.26 [U141](X1,X2,X3) = 2.X1 19.93/21.26 [U151](X1,X2,X3) = 2.X1 + 2 19.93/21.26 [U161](X1,X2) = 0 19.93/21.26 [U171](X1,X2,X3) = 0 19.93/21.26 [U181](X1,X2) = 0 19.93/21.26 [U191](X1,X2,X3) = 0 19.93/21.26 [U21](X1,X2,X3) = X1 + 2.X3 + 2 19.93/21.26 [U22](X1,X2) = 2.X2 + 2 19.93/21.26 [U23](X) = X 19.93/21.26 [U31](X1,X2) = X1 19.93/21.26 [U32](X) = 2 19.93/21.26 [U41](X1,X2) = 2 19.93/21.26 [U42](X) = 2 19.93/21.26 [U51](X1,X2,X3) = 2.X1 + 2.X2 + X3 + 2 19.93/21.26 [U52](X1,X2) = X2 + 2 19.93/21.26 [U53](X) = 2 19.93/21.26 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.26 [U62](X1,X2) = X1 + 2.X2 + 2 19.93/21.26 [U63](X) = X + 2 19.93/21.26 [U71](X1,X2) = 2.X1 + 1 19.93/21.26 [U72](X) = 2 19.93/21.26 [U81](X1,X2) = 2.X1 + 1 19.93/21.26 [U82](X) = 2 19.93/21.26 [U91](X) = 0 19.93/21.26 [and](X1,X2) = X2 19.93/21.26 [isBag](X) = 2.X + 2 19.93/21.26 [isBagKind](X) = 2 19.93/21.26 [isBin](X) = 2.X + 2 19.93/21.26 [isBinKind](X) = 2 19.93/21.26 [mult](X1,X2) = X1 + X2 + 2 19.93/21.26 [plus](X1,X2) = X1 + X2 + 2 19.93/21.26 [prod](X) = 2 19.93/21.26 [sum](X) = 2 19.93/21.26 [union](X1,X2) = 2.X2 + 2 19.93/21.26 [1](X) = 2 19.93/21.26 [empty] = 1 19.93/21.26 [singl](X) = 1 19.93/21.26 [tt] = 2 19.93/21.26 [z] = 0 19.93/21.26 [0#](X) = 0 19.93/21.26 [U101#](X1,X2,X3) = 0 19.93/21.26 [U11#](X1,X2) = 0 19.93/21.26 [U111#](X1,X2,X3) = 0 19.93/21.26 [U12#](X) = 0 19.93/21.26 [U121#](X1,X2) = 0 19.93/21.26 [U131#](X1,X2,X3) = 0 19.93/21.26 [U141#](X1,X2,X3) = 0 19.93/21.26 [U151#](X1,X2,X3) = 0 19.93/21.26 [U161#](X1,X2) = 0 19.93/21.26 [U171#](X1,X2,X3) = 0 19.93/21.26 [U181#](X1,X2) = 0 19.93/21.26 [U191#](X1,X2,X3) = 0 19.93/21.26 [U21#](X1,X2,X3) = 0 19.93/21.26 [U22#](X1,X2) = 0 19.93/21.26 [U23#](X) = 0 19.93/21.26 [U31#](X1,X2) = 0 19.93/21.26 [U32#](X) = 0 19.93/21.26 [U41#](X1,X2) = 0 19.93/21.26 [U42#](X) = 0 19.93/21.26 [U51#](X1,X2,X3) = 0 19.93/21.26 [U52#](X1,X2) = 0 19.93/21.26 [U53#](X) = 0 19.93/21.26 [U61#](X1,X2,X3) = 0 19.93/21.26 [U62#](X1,X2) = 0 19.93/21.26 [U63#](X) = 0 19.93/21.26 [U71#](X1,X2) = 0 19.93/21.26 [U72#](X) = 0 19.93/21.26 [U81#](X1,X2) = 0 19.93/21.26 [U82#](X) = 0 19.93/21.26 [U91#](X) = 0 19.93/21.26 [AND](X1,X2) = 0 19.93/21.26 [ISBAG](X) = 0 19.93/21.26 [ISBAGKIND](X) = 0 19.93/21.26 [ISBIN](X) = 0 19.93/21.26 [ISBINKIND](X) = 0 19.93/21.26 [MULT](X1,X2) = 2.X1 + 2.X2 19.93/21.26 [PLUS](X1,X2) = 0 19.93/21.26 [PROD](X) = 0 19.93/21.26 [SUM](X) = 0 19.93/21.26 [UNION](X1,X2) = 0 19.93/21.26 19.93/21.26 Problem 1.6: 19.93/21.26 19.93/21.26 SCC Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.26 MULT(x6,x7) = MULT(x7,x6) 19.93/21.26 -> Pairs: 19.93/21.26 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.26 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.26 ->Strongly Connected Components: 19.93/21.26 ->->Cycle: 19.93/21.26 ->->-> Pairs: 19.93/21.26 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.26 -> FAxioms: 19.93/21.26 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) -> mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) -> plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) -> union(x7,x6) 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,mult(x7,x8)) 19.93/21.26 MULT(x6,x7) -> MULT(x7,x6) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 ->->-> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.26 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.26 19.93/21.26 Problem 1.6: 19.93/21.26 19.93/21.26 Reduction Pairs Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.26 MULT(x6,x7) = MULT(x7,x6) 19.93/21.26 -> Pairs: 19.93/21.26 MULT(mult(z,X),x6) -> MULT(U91(and(isBin(X),isBinKind(X))),x6) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Usable Equations: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> Usable Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 -> SRules: 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.26 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.26 ->Interpretation type: 19.93/21.26 Linear 19.93/21.26 ->Coefficients: 19.93/21.26 Natural Numbers 19.93/21.26 ->Dimension: 19.93/21.26 1 19.93/21.26 ->Bound: 19.93/21.26 2 19.93/21.26 ->Interpretation: 19.93/21.26 19.93/21.26 [0](X) = 2 19.93/21.26 [U101](X1,X2,X3) = X1 + 2 19.93/21.26 [U11](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.26 [U111](X1,X2,X3) = X1 + X3 + 2 19.93/21.26 [U12](X) = 2 19.93/21.26 [U121](X1,X2) = X2 + 2 19.93/21.26 [U131](X1,X2,X3) = 2 19.93/21.26 [U141](X1,X2,X3) = X1 + 2 19.93/21.26 [U151](X1,X2,X3) = 2 19.93/21.26 [U161](X1,X2) = 0 19.93/21.26 [U171](X1,X2,X3) = 0 19.93/21.26 [U181](X1,X2) = 0 19.93/21.26 [U191](X1,X2,X3) = 0 19.93/21.26 [U21](X1,X2,X3) = X1 + X2 19.93/21.26 [U22](X1,X2) = 2 19.93/21.26 [U23](X) = 2 19.93/21.26 [U31](X1,X2) = 2.X1 + 2 19.93/21.26 [U32](X) = 2 19.93/21.26 [U41](X1,X2) = 2.X1 + 2 19.93/21.26 [U42](X) = 2 19.93/21.26 [U51](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.26 [U52](X1,X2) = X1 + 2 19.93/21.26 [U53](X) = 2 19.93/21.26 [U61](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 19.93/21.26 [U62](X1,X2) = X1 + 2 19.93/21.26 [U63](X) = 2 19.93/21.26 [U71](X1,X2) = 2.X1 + X2 + 2 19.93/21.26 [U72](X) = 2 19.93/21.26 [U81](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.26 [U82](X) = X + 1 19.93/21.26 [U91](X) = 2 19.93/21.26 [and](X1,X2) = X2 19.93/21.26 [isBag](X) = 2.X + 2 19.93/21.26 [isBagKind](X) = 2 19.93/21.26 [isBin](X) = 2.X + 2 19.93/21.26 [isBinKind](X) = 2 19.93/21.26 [mult](X1,X2) = X1 + X2 + 2 19.93/21.26 [plus](X1,X2) = X1 + X2 + 1 19.93/21.26 [prod](X) = 2.X + 2 19.93/21.26 [sum](X) = X + 2 19.93/21.26 [union](X1,X2) = X1 19.93/21.26 [1](X) = 2 19.93/21.26 [empty] = 2 19.93/21.26 [singl](X) = 2.X + 2 19.93/21.26 [tt] = 2 19.93/21.26 [z] = 2 19.93/21.26 [0#](X) = 0 19.93/21.26 [U101#](X1,X2,X3) = 0 19.93/21.26 [U11#](X1,X2) = 0 19.93/21.26 [U111#](X1,X2,X3) = 0 19.93/21.26 [U12#](X) = 0 19.93/21.26 [U121#](X1,X2) = 0 19.93/21.26 [U131#](X1,X2,X3) = 0 19.93/21.26 [U141#](X1,X2,X3) = 0 19.93/21.26 [U151#](X1,X2,X3) = 0 19.93/21.26 [U161#](X1,X2) = 0 19.93/21.26 [U171#](X1,X2,X3) = 0 19.93/21.26 [U181#](X1,X2) = 0 19.93/21.26 [U191#](X1,X2,X3) = 0 19.93/21.26 [U21#](X1,X2,X3) = 0 19.93/21.26 [U22#](X1,X2) = 0 19.93/21.26 [U23#](X) = 0 19.93/21.26 [U31#](X1,X2) = 0 19.93/21.26 [U32#](X) = 0 19.93/21.26 [U41#](X1,X2) = 0 19.93/21.26 [U42#](X) = 0 19.93/21.26 [U51#](X1,X2,X3) = 0 19.93/21.26 [U52#](X1,X2) = 0 19.93/21.26 [U53#](X) = 0 19.93/21.26 [U61#](X1,X2,X3) = 0 19.93/21.26 [U62#](X1,X2) = 0 19.93/21.26 [U63#](X) = 0 19.93/21.26 [U71#](X1,X2) = 0 19.93/21.26 [U72#](X) = 0 19.93/21.26 [U81#](X1,X2) = 0 19.93/21.26 [U82#](X) = 0 19.93/21.26 [U91#](X) = 0 19.93/21.26 [AND](X1,X2) = 0 19.93/21.26 [ISBAG](X) = 0 19.93/21.26 [ISBAGKIND](X) = 0 19.93/21.26 [ISBIN](X) = 0 19.93/21.26 [ISBINKIND](X) = 0 19.93/21.26 [MULT](X1,X2) = 2.X1 + 2.X2 19.93/21.26 [PLUS](X1,X2) = 0 19.93/21.26 [PROD](X) = 0 19.93/21.26 [SUM](X) = 0 19.93/21.26 [UNION](X1,X2) = 0 19.93/21.26 19.93/21.26 Problem 1.6: 19.93/21.26 19.93/21.26 SCC Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 MULT(mult(x6,x7),x8) = MULT(x6,mult(x7,x8)) 19.93/21.26 MULT(x6,x7) = MULT(x7,x6) 19.93/21.26 -> Pairs: 19.93/21.26 Empty 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 MULT(mult(x6,x7),x8) -> MULT(x6,x7) 19.93/21.26 MULT(x6,mult(x7,x8)) -> MULT(x7,x8) 19.93/21.26 ->Strongly Connected Components: 19.93/21.26 There is no strongly connected component 19.93/21.26 19.93/21.26 The problem is finite. 19.93/21.26 19.93/21.26 Problem 1.7: 19.93/21.26 19.93/21.26 Reduction Pairs Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 Empty 19.93/21.26 -> Pairs: 19.93/21.26 U171#(tt,A,B) -> PROD(A) 19.93/21.26 U171#(tt,A,B) -> PROD(B) 19.93/21.26 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Usable Equations: 19.93/21.26 Empty 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> Usable Rules: 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 -> SRules: 19.93/21.26 Empty 19.93/21.26 ->Interpretation type: 19.93/21.26 Linear 19.93/21.26 ->Coefficients: 19.93/21.26 Natural Numbers 19.93/21.26 ->Dimension: 19.93/21.26 1 19.93/21.26 ->Bound: 19.93/21.26 2 19.93/21.26 ->Interpretation: 19.93/21.26 19.93/21.26 [0](X) = 1 19.93/21.26 [U101](X1,X2,X3) = 0 19.93/21.26 [U11](X1,X2) = X1 + 2 19.93/21.26 [U111](X1,X2,X3) = 0 19.93/21.26 [U12](X) = 2 19.93/21.26 [U121](X1,X2) = 0 19.93/21.26 [U131](X1,X2,X3) = 0 19.93/21.26 [U141](X1,X2,X3) = 0 19.93/21.26 [U151](X1,X2,X3) = 0 19.93/21.26 [U161](X1,X2) = 0 19.93/21.26 [U171](X1,X2,X3) = 0 19.93/21.26 [U181](X1,X2) = 0 19.93/21.26 [U191](X1,X2,X3) = 0 19.93/21.26 [U21](X1,X2,X3) = X1 + 2.X2 + 2.X3 + 2 19.93/21.26 [U22](X1,X2) = X1 + 2.X2 19.93/21.26 [U23](X) = X + 1 19.93/21.26 [U31](X1,X2) = X1 19.93/21.26 [U32](X) = 2 19.93/21.26 [U41](X1,X2) = 2 19.93/21.26 [U42](X) = 2 19.93/21.26 [U51](X1,X2,X3) = 2.X3 + 2 19.93/21.26 [U52](X1,X2) = 2.X2 + 2 19.93/21.26 [U53](X) = 2 19.93/21.26 [U61](X1,X2,X3) = 2.X2 + 2.X3 + 2 19.93/21.26 [U62](X1,X2) = 2.X1 + 2.X2 19.93/21.26 [U63](X) = 2.X + 2 19.93/21.26 [U71](X1,X2) = 2.X2 19.93/21.26 [U72](X) = X 19.93/21.26 [U81](X1,X2) = X1 + 1 19.93/21.26 [U82](X) = 2 19.93/21.26 [U91](X) = 0 19.93/21.26 [and](X1,X2) = X2 19.93/21.26 [isBag](X) = 2.X 19.93/21.26 [isBagKind](X) = 2 19.93/21.26 [isBin](X) = X + 1 19.93/21.26 [isBinKind](X) = 2 19.93/21.26 [mult](X1,X2) = X1 + 2.X2 + 2 19.93/21.26 [plus](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.26 [prod](X) = 2.X 19.93/21.26 [sum](X) = 2 19.93/21.26 [union](X1,X2) = 2.X1 + 2.X2 + 2 19.93/21.26 [1](X) = 2.X + 1 19.93/21.26 [empty] = 1 19.93/21.26 [singl](X) = 2.X + 2 19.93/21.26 [tt] = 2 19.93/21.26 [z] = 2 19.93/21.26 [0#](X) = 0 19.93/21.26 [U101#](X1,X2,X3) = 0 19.93/21.26 [U11#](X1,X2) = 0 19.93/21.26 [U111#](X1,X2,X3) = 0 19.93/21.26 [U12#](X) = 0 19.93/21.26 [U121#](X1,X2) = 0 19.93/21.26 [U131#](X1,X2,X3) = 0 19.93/21.26 [U141#](X1,X2,X3) = 0 19.93/21.26 [U151#](X1,X2,X3) = 0 19.93/21.26 [U161#](X1,X2) = 0 19.93/21.26 [U171#](X1,X2,X3) = 2.X1 + 2.X2 + 2.X3 + 2 19.93/21.26 [U181#](X1,X2) = 0 19.93/21.26 [U191#](X1,X2,X3) = 0 19.93/21.26 [U21#](X1,X2,X3) = 0 19.93/21.26 [U22#](X1,X2) = 0 19.93/21.26 [U23#](X) = 0 19.93/21.26 [U31#](X1,X2) = 0 19.93/21.26 [U32#](X) = 0 19.93/21.26 [U41#](X1,X2) = 0 19.93/21.26 [U42#](X) = 0 19.93/21.26 [U51#](X1,X2,X3) = 0 19.93/21.26 [U52#](X1,X2) = 0 19.93/21.26 [U53#](X) = 0 19.93/21.26 [U61#](X1,X2,X3) = 0 19.93/21.26 [U62#](X1,X2) = 0 19.93/21.26 [U63#](X) = 0 19.93/21.26 [U71#](X1,X2) = 0 19.93/21.26 [U72#](X) = 0 19.93/21.26 [U81#](X1,X2) = 0 19.93/21.26 [U82#](X) = 0 19.93/21.26 [U91#](X) = 0 19.93/21.26 [AND](X1,X2) = 0 19.93/21.26 [ISBAG](X) = 0 19.93/21.26 [ISBAGKIND](X) = 0 19.93/21.26 [ISBIN](X) = 0 19.93/21.26 [ISBINKIND](X) = 0 19.93/21.26 [MULT](X1,X2) = 0 19.93/21.26 [PLUS](X1,X2) = 0 19.93/21.26 [PROD](X) = 2.X + 2 19.93/21.26 [SUM](X) = 0 19.93/21.26 [UNION](X1,X2) = 0 19.93/21.26 19.93/21.26 Problem 1.7: 19.93/21.26 19.93/21.26 SCC Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 Empty 19.93/21.26 -> Pairs: 19.93/21.26 U171#(tt,A,B) -> PROD(B) 19.93/21.26 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 Empty 19.93/21.26 ->Strongly Connected Components: 19.93/21.26 ->->Cycle: 19.93/21.26 ->->-> Pairs: 19.93/21.26 U171#(tt,A,B) -> PROD(B) 19.93/21.26 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 -> FAxioms: 19.93/21.26 mult(mult(x6,x7),x8) -> mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) -> mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) -> plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) -> plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) -> union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) -> union(x7,x6) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 ->->-> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 Empty 19.93/21.26 19.93/21.26 Problem 1.7: 19.93/21.26 19.93/21.26 Subterm Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 Empty 19.93/21.26 -> Pairs: 19.93/21.26 U171#(tt,A,B) -> PROD(B) 19.93/21.26 PROD(union(A,B)) -> U171#(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 Empty 19.93/21.26 ->Projection: 19.93/21.26 pi(U171#) = [3] 19.93/21.26 pi(PROD) = [1] 19.93/21.26 19.93/21.26 Problem 1.7: 19.93/21.26 19.93/21.26 SCC Processor: 19.93/21.26 -> FAxioms: 19.93/21.26 Empty 19.93/21.26 -> Pairs: 19.93/21.26 U171#(tt,A,B) -> PROD(B) 19.93/21.26 -> EAxioms: 19.93/21.26 mult(mult(x6,x7),x8) = mult(x6,mult(x7,x8)) 19.93/21.26 mult(x6,x7) = mult(x7,x6) 19.93/21.26 plus(plus(x6,x7),x8) = plus(x6,plus(x7,x8)) 19.93/21.26 plus(x6,x7) = plus(x7,x6) 19.93/21.26 union(union(x6,x7),x8) = union(x6,union(x7,x8)) 19.93/21.26 union(x6,x7) = union(x7,x6) 19.93/21.26 -> Rules: 19.93/21.26 0(z) -> z 19.93/21.26 U101(tt,X,Y) -> 0(mult(X,Y)) 19.93/21.26 U11(tt,V1) -> U12(isBin(V1)) 19.93/21.26 U111(tt,X,Y) -> plus(0(mult(X,Y)),Y) 19.93/21.26 U12(tt) -> tt 19.93/21.26 U121(tt,X) -> X 19.93/21.26 U131(tt,X,Y) -> 0(plus(X,Y)) 19.93/21.26 U141(tt,X,Y) -> 1(plus(X,Y)) 19.93/21.26 U151(tt,X,Y) -> 0(plus(plus(X,Y),1(z))) 19.93/21.26 U161(tt,X) -> X 19.93/21.26 U171(tt,A,B) -> mult(prod(A),prod(B)) 19.93/21.26 U181(tt,X) -> X 19.93/21.26 U191(tt,A,B) -> plus(sum(A),sum(B)) 19.93/21.26 U21(tt,V1,V2) -> U22(isBag(V1),V2) 19.93/21.26 U22(tt,V2) -> U23(isBag(V2)) 19.93/21.26 U23(tt) -> tt 19.93/21.26 U31(tt,V1) -> U32(isBin(V1)) 19.93/21.26 U32(tt) -> tt 19.93/21.26 U41(tt,V1) -> U42(isBin(V1)) 19.93/21.26 U42(tt) -> tt 19.93/21.26 U51(tt,V1,V2) -> U52(isBin(V1),V2) 19.93/21.26 U52(tt,V2) -> U53(isBin(V2)) 19.93/21.26 U53(tt) -> tt 19.93/21.26 U61(tt,V1,V2) -> U62(isBin(V1),V2) 19.93/21.26 U62(tt,V2) -> U63(isBin(V2)) 19.93/21.26 U63(tt) -> tt 19.93/21.26 U71(tt,V1) -> U72(isBag(V1)) 19.93/21.26 U72(tt) -> tt 19.93/21.26 U81(tt,V1) -> U82(isBag(V1)) 19.93/21.26 U82(tt) -> tt 19.93/21.26 U91(tt) -> z 19.93/21.26 and(tt,X) -> X 19.93/21.26 isBag(union(V1,V2)) -> U21(and(isBagKind(V1),isBagKind(V2)),V1,V2) 19.93/21.26 isBag(empty) -> tt 19.93/21.26 isBag(singl(V1)) -> U11(isBinKind(V1),V1) 19.93/21.26 isBagKind(union(V1,V2)) -> and(isBagKind(V1),isBagKind(V2)) 19.93/21.26 isBagKind(empty) -> tt 19.93/21.26 isBagKind(singl(V1)) -> isBinKind(V1) 19.93/21.26 isBin(0(V1)) -> U31(isBinKind(V1),V1) 19.93/21.26 isBin(mult(V1,V2)) -> U51(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(plus(V1,V2)) -> U61(and(isBinKind(V1),isBinKind(V2)),V1,V2) 19.93/21.26 isBin(prod(V1)) -> U71(isBagKind(V1),V1) 19.93/21.26 isBin(sum(V1)) -> U81(isBagKind(V1),V1) 19.93/21.26 isBin(1(V1)) -> U41(isBinKind(V1),V1) 19.93/21.26 isBin(z) -> tt 19.93/21.26 isBinKind(0(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(mult(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(plus(V1,V2)) -> and(isBinKind(V1),isBinKind(V2)) 19.93/21.26 isBinKind(prod(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(sum(V1)) -> isBagKind(V1) 19.93/21.26 isBinKind(1(V1)) -> isBinKind(V1) 19.93/21.26 isBinKind(z) -> tt 19.93/21.26 mult(0(X),Y) -> U101(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(1(X),Y) -> U111(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 mult(z,X) -> U91(and(isBin(X),isBinKind(X))) 19.93/21.26 plus(0(X),0(Y)) -> U131(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(0(X),1(Y)) -> U141(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(1(X),1(Y)) -> U151(and(and(isBin(X),isBinKind(X)),and(isBin(Y),isBinKind(Y))),X,Y) 19.93/21.26 plus(z,X) -> U121(and(isBin(X),isBinKind(X)),X) 19.93/21.26 prod(union(A,B)) -> U171(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 prod(empty) -> 1(z) 19.93/21.26 prod(singl(X)) -> U161(and(isBin(X),isBinKind(X)),X) 19.93/21.26 sum(union(A,B)) -> U191(and(and(isBag(A),isBagKind(A)),and(isBag(B),isBagKind(B))),A,B) 19.93/21.26 sum(empty) -> 0(z) 19.93/21.26 sum(singl(X)) -> U181(and(isBin(X),isBinKind(X)),X) 19.93/21.26 union(empty,X) -> X 19.93/21.26 union(X,empty) -> X 19.93/21.26 -> SRules: 19.93/21.26 Empty 19.93/21.26 ->Strongly Connected Components: 19.93/21.26 There is no strongly connected component 19.93/21.26 19.93/21.26 The problem is finite. 19.93/21.26 EOF