The rewrite relation of the following equational TRS is considered.
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U11(tt) | → | tt | (6) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U121(tt,X) | → | X | (9) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U161(tt,X) | → | X | (16) |
| U171(tt,A,B) | → | U172(isBag(B),A,B) | (17) |
| U172(tt,A,B) | → | mult(prod(A),prod(B)) | (18) |
| U181(tt,X) | → | X | (19) |
| U191(tt,A,B) | → | U192(isBag(B),A,B) | (20) |
| U192(tt,A,B) | → | plus(sum(A),sum(B)) | (21) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| U22(tt) | → | tt | (23) |
| U31(tt) | → | tt | (24) |
| U41(tt) | → | tt | (25) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| U52(tt) | → | tt | (27) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| U62(tt) | → | tt | (29) |
| U71(tt) | → | tt | (30) |
| U81(tt) | → | tt | (31) |
| U91(tt) | → | z | (32) |
| isBag(empty) | → | tt | (33) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBin(z) | → | tt | (36) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| prod(empty) | → | 1(z) | (50) |
| prod(singl(X)) | → | U161(isBin(X),X) | (51) |
| prod(union(A,B)) | → | U171(isBag(A),A,B) | (52) |
| sum(empty) | → | 0(z) | (53) |
| sum(singl(X)) | → | U181(isBin(X),X) | (54) |
| sum(union(A,B)) | → | U191(isBag(A),A,B) | (55) |
Associative symbols: mult, plus, union
Commutative symbols: mult, plus, union
The following set of (strict) dependency pairs is constructed for the TRS.
| U101#(tt,X,Y) | → | U102#(isBin(Y),X,Y) | (71) |
| U101#(tt,X,Y) | → | isBin#(Y) | (72) |
| U102#(tt,X,Y) | → | 0#(mult(X,Y)) | (73) |
| U102#(tt,X,Y) | → | mult#(X,Y) | (74) |
| U111#(tt,X,Y) | → | U112#(isBin(Y),X,Y) | (75) |
| U111#(tt,X,Y) | → | isBin#(Y) | (76) |
| U112#(tt,X,Y) | → | plus#(0(mult(X,Y)),Y) | (77) |
| U112#(tt,X,Y) | → | 0#(mult(X,Y)) | (78) |
| U112#(tt,X,Y) | → | mult#(X,Y) | (79) |
| U131#(tt,X,Y) | → | U132#(isBin(Y),X,Y) | (80) |
| U131#(tt,X,Y) | → | isBin#(Y) | (81) |
| U132#(tt,X,Y) | → | 0#(plus(X,Y)) | (82) |
| U132#(tt,X,Y) | → | plus#(X,Y) | (83) |
| U141#(tt,X,Y) | → | U142#(isBin(Y),X,Y) | (84) |
| U141#(tt,X,Y) | → | isBin#(Y) | (85) |
| U142#(tt,X,Y) | → | plus#(X,Y) | (86) |
| U151#(tt,X,Y) | → | U152#(isBin(Y),X,Y) | (87) |
| U151#(tt,X,Y) | → | isBin#(Y) | (88) |
| U152#(tt,X,Y) | → | 0#(plus(plus(X,Y),1(z))) | (89) |
| U152#(tt,X,Y) | → | plus#(plus(X,Y),1(z)) | (90) |
| U152#(tt,X,Y) | → | plus#(X,Y) | (91) |
| U171#(tt,A,B) | → | U172#(isBag(B),A,B) | (92) |
| U171#(tt,A,B) | → | isBag#(B) | (93) |
| U172#(tt,A,B) | → | mult#(prod(A),prod(B)) | (94) |
| U172#(tt,A,B) | → | prod#(A) | (95) |
| U172#(tt,A,B) | → | prod#(B) | (96) |
| U191#(tt,A,B) | → | U192#(isBag(B),A,B) | (97) |
| U191#(tt,A,B) | → | isBag#(B) | (98) |
| U192#(tt,A,B) | → | plus#(sum(A),sum(B)) | (99) |
| U192#(tt,A,B) | → | sum#(A) | (100) |
| U192#(tt,A,B) | → | sum#(B) | (101) |
| U21#(tt,V2) | → | U22#(isBag(V2)) | (102) |
| U21#(tt,V2) | → | isBag#(V2) | (103) |
| U51#(tt,V2) | → | U52#(isBin(V2)) | (104) |
| U51#(tt,V2) | → | isBin#(V2) | (105) |
| U61#(tt,V2) | → | U62#(isBin(V2)) | (106) |
| U61#(tt,V2) | → | isBin#(V2) | (107) |
| isBag#(singl(V1)) | → | U11#(isBin(V1)) | (108) |
| isBag#(singl(V1)) | → | isBin#(V1) | (109) |
| isBag#(union(V1,V2)) | → | U21#(isBag(V1),V2) | (110) |
| isBag#(union(V1,V2)) | → | isBag#(V1) | (111) |
| isBin#(0(V1)) | → | U31#(isBin(V1)) | (112) |
| isBin#(0(V1)) | → | isBin#(V1) | (113) |
| isBin#(1(V1)) | → | U41#(isBin(V1)) | (114) |
| isBin#(1(V1)) | → | isBin#(V1) | (115) |
| isBin#(mult(V1,V2)) | → | U51#(isBin(V1),V2) | (116) |
| isBin#(mult(V1,V2)) | → | isBin#(V1) | (117) |
| isBin#(plus(V1,V2)) | → | U61#(isBin(V1),V2) | (118) |
| isBin#(plus(V1,V2)) | → | isBin#(V1) | (119) |
| isBin#(prod(V1)) | → | U71#(isBag(V1)) | (120) |
| isBin#(prod(V1)) | → | isBag#(V1) | (121) |
| isBin#(sum(V1)) | → | U81#(isBag(V1)) | (122) |
| isBin#(sum(V1)) | → | isBag#(V1) | (123) |
| mult#(z,X) | → | U91#(isBin(X)) | (124) |
| mult#(z,X) | → | isBin#(X) | (125) |
| mult#(0(X),Y) | → | U101#(isBin(X),X,Y) | (126) |
| mult#(0(X),Y) | → | isBin#(X) | (127) |
| mult#(1(X),Y) | → | U111#(isBin(X),X,Y) | (128) |
| mult#(1(X),Y) | → | isBin#(X) | (129) |
| plus#(z,X) | → | U121#(isBin(X),X) | (130) |
| plus#(z,X) | → | isBin#(X) | (131) |
| plus#(0(X),0(Y)) | → | U131#(isBin(X),X,Y) | (132) |
| plus#(0(X),0(Y)) | → | isBin#(X) | (133) |
| plus#(0(X),1(Y)) | → | U141#(isBin(X),X,Y) | (134) |
| plus#(0(X),1(Y)) | → | isBin#(X) | (135) |
| plus#(1(X),1(Y)) | → | U151#(isBin(X),X,Y) | (136) |
| plus#(1(X),1(Y)) | → | isBin#(X) | (137) |
| prod#(singl(X)) | → | U161#(isBin(X),X) | (138) |
| prod#(singl(X)) | → | isBin#(X) | (139) |
| prod#(union(A,B)) | → | U171#(isBag(A),A,B) | (140) |
| prod#(union(A,B)) | → | isBag#(A) | (141) |
| sum#(empty) | → | 0#(z) | (142) |
| sum#(singl(X)) | → | U181#(isBin(X),X) | (143) |
| sum#(singl(X)) | → | isBin#(X) | (144) |
| sum#(union(A,B)) | → | U191#(isBag(A),A,B) | (145) |
| sum#(union(A,B)) | → | isBag#(A) | (146) |
| mult#(mult(z,X),ext) | → | mult#(U91(isBin(X)),ext) | (147) |
| mult#(mult(z,X),ext) | → | U91#(isBin(X)) | (148) |
| mult#(mult(z,X),ext) | → | isBin#(X) | (149) |
| mult#(mult(0(X),Y),ext) | → | mult#(U101(isBin(X),X,Y),ext) | (150) |
| mult#(mult(0(X),Y),ext) | → | U101#(isBin(X),X,Y) | (151) |
| mult#(mult(0(X),Y),ext) | → | isBin#(X) | (152) |
| mult#(mult(1(X),Y),ext) | → | mult#(U111(isBin(X),X,Y),ext) | (153) |
| mult#(mult(1(X),Y),ext) | → | U111#(isBin(X),X,Y) | (154) |
| mult#(mult(1(X),Y),ext) | → | isBin#(X) | (155) |
| plus#(plus(z,X),ext) | → | plus#(U121(isBin(X),X),ext) | (156) |
| plus#(plus(z,X),ext) | → | U121#(isBin(X),X) | (157) |
| plus#(plus(z,X),ext) | → | isBin#(X) | (158) |
| plus#(plus(0(X),0(Y)),ext) | → | plus#(U131(isBin(X),X,Y),ext) | (159) |
| plus#(plus(0(X),0(Y)),ext) | → | U131#(isBin(X),X,Y) | (160) |
| plus#(plus(0(X),0(Y)),ext) | → | isBin#(X) | (161) |
| plus#(plus(0(X),1(Y)),ext) | → | plus#(U141(isBin(X),X,Y),ext) | (162) |
| plus#(plus(0(X),1(Y)),ext) | → | U141#(isBin(X),X,Y) | (163) |
| plus#(plus(0(X),1(Y)),ext) | → | isBin#(X) | (164) |
| plus#(plus(1(X),1(Y)),ext) | → | plus#(U151(isBin(X),X,Y),ext) | (165) |
| plus#(plus(1(X),1(Y)),ext) | → | U151#(isBin(X),X,Y) | (166) |
| plus#(plus(1(X),1(Y)),ext) | → | isBin#(X) | (167) |
| union#(union(X,empty),ext) | → | union#(X,ext) | (168) |
| union#(union(empty,X),ext) | → | union#(X,ext) | (169) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
The dependency pairs are split into 6 components.
| U172#(tt,A,B) | → | prod#(A) | (95) |
| prod#(union(A,B)) | → | U171#(isBag(A),A,B) | (140) |
| U171#(tt,A,B) | → | U172#(isBag(B),A,B) | (92) |
| U172#(tt,A,B) | → | prod#(B) | (96) |
| [U22(x1)] | = | 1 · x1 |
| [tt] | = | 0 |
| [U81(x1)] | = | 2 · x1 |
| [isBag(x1)] | = | 2 · x1 |
| [empty] | = | 0 |
| [U41(x1)] | = | 2 · x1 |
| [isBin(x1)] | = | 2 · x1 |
| [mult(x1, x2)] | = | 2 + 3 · x1 + 3 · x2 |
| [U51(x1, x2)] | = | 1 + 2 · x1 + 3 · x2 |
| [U61(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [U62(x1)] | = | 1 · x1 |
| [z] | = | 0 |
| [1(x1)] | = | 3 · x1 |
| [U52(x1)] | = | 1 · x1 |
| [prod(x1)] | = | 2 · x1 |
| [U71(x1)] | = | 1 · x1 |
| [U21(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [union(x1, x2)] | = | 3 · x1 + 3 · x2 |
| [U11(x1)] | = | 2 · x1 |
| [0(x1)] | = | 2 + 3 · x1 |
| [U31(x1)] | = | 2 · x1 |
| [plus(x1, x2)] | = | 2 + 3 · x1 + 3 · x2 |
| [singl(x1)] | = | 3 · x1 |
| [sum(x1)] | = | 2 · x1 |
| [U171#(x1, x2, x3)] | = | 1 · x1 + 1 · x2 + 3 · x3 |
| [U172#(x1, x2, x3)] | = | 1 · x1 + 1 · x2 + 1 · x3 |
| [prod#(x1)] | = | 1 · x1 |
| U22(tt) | → | tt | (23) |
| U81(tt) | → | tt | (31) |
| isBag(empty) | → | tt | (33) |
| U41(tt) | → | tt | (25) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| isBin(z) | → | tt | (36) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| U11(tt) | → | tt | (6) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| U52(tt) | → | tt | (27) |
| U71(tt) | → | tt | (30) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| U31(tt) | → | tt | (24) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| U62(tt) | → | tt | (29) |
| prod#(union(A,B)) | → | U171#(isBag(A),A,B) | (140) |
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U121(tt,X) | → | X | (9) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U161(tt,X) | → | X | (16) |
| U171(tt,A,B) | → | U172(isBag(B),A,B) | (17) |
| U172(tt,A,B) | → | mult(prod(A),prod(B)) | (18) |
| U181(tt,X) | → | X | (19) |
| U191(tt,A,B) | → | U192(isBag(B),A,B) | (20) |
| U192(tt,A,B) | → | plus(sum(A),sum(B)) | (21) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| U91(tt) | → | z | (32) |
| isBag(empty) | → | tt | (33) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBin(z) | → | tt | (36) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| prod(empty) | → | 1(z) | (50) |
| prod(singl(X)) | → | U161(isBin(X),X) | (51) |
| prod(union(A,B)) | → | U171(isBag(A),A,B) | (52) |
| sum(empty) | → | 0(z) | (53) |
| sum(singl(X)) | → | U181(isBin(X),X) | (54) |
| sum(union(A,B)) | → | U191(isBag(A),A,B) | (55) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
The dependency pairs are split into 0 components.
| U102#(tt,X,Y) | → | mult#(X,Y) | (74) |
| mult#(0(X),Y) | → | U101#(isBin(X),X,Y) | (126) |
| U101#(tt,X,Y) | → | U102#(isBin(Y),X,Y) | (71) |
| mult#(1(X),Y) | → | U111#(isBin(X),X,Y) | (128) |
| U111#(tt,X,Y) | → | U112#(isBin(Y),X,Y) | (75) |
| U112#(tt,X,Y) | → | mult#(X,Y) | (79) |
| mult#(mult(z,X),ext) | → | mult#(U91(isBin(X)),ext) | (147) |
| mult#(mult(0(X),Y),ext) | → | mult#(U101(isBin(X),X,Y),ext) | (150) |
| mult#(mult(0(X),Y),ext) | → | U101#(isBin(X),X,Y) | (151) |
| mult#(mult(1(X),Y),ext) | → | mult#(U111(isBin(X),X,Y),ext) | (153) |
| mult#(mult(1(X),Y),ext) | → | U111#(isBin(X),X,Y) | (154) |
| mult#(mult(x,y),z') | → | mult#(y,z') | (68) |
| mult#(x,y) | → | mult#(y,x) | (62) |
| mult#(mult(x,y),z') | → | mult#(x,mult(y,z')) | (65) |
| [mult#(x1, x2)] | = | 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [mult(x1, x2)] | = | 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [z] | = | 0 |
| [U91(x1)] | = | 0 |
| [isBin(x1)] | = | 1 |
| [U112#(x1, x2, x3)] | = | 1 · x3 + 1 · x2 + 1 · x2 · x3 |
| [tt] | = | 1 |
| [1(x1)] | = | 1 + 1 · x1 |
| [U111#(x1, x2, x3)] | = | 1 · x3 + 1 · x1 · x2 + 1 · x1 · x2 · x3 |
| [U111(x1, x2, x3)] | = | 1 · x3 + 1 · x2 + 1 · x2 · x3 + 1 · x1 · x3 |
| [U102#(x1, x2, x3)] | = | 1 · x3 + 1 · x2 · x3 + 1 · x1 · x2 |
| [U101#(x1, x2, x3)] | = | 1 · x3 + 1 · x2 · x3 + 1 · x1 · x2 |
| [0(x1)] | = | 1 · x1 |
| [U101(x1, x2, x3)] | = | 1 · x3 + 1 · x2 + 1 · x2 · x3 |
| [plus(x1, x2)] | = | 1 · x2 + 1 · x1 |
| [U131(x1, x2, x3)] | = | 1 · x3 + 1 · x2 |
| [U141(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x1 · x2 |
| [U151(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 |
| [U121(x1, x2)] | = | 1 · x1 · x2 |
| [U11(x1)] | = | 1 |
| [U81(x1)] | = | 1 |
| [U132(x1, x2, x3)] | = | 1 · x3 + 1 · x2 |
| [U142(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 |
| [U152(x1, x2, x3)] | = | 1 + 1 · x1 · x3 + 1 · x1 · x2 |
| [U21(x1, x2)] | = | 1 · x1 · x2 |
| [U22(x1)] | = | 1 · x1 |
| [isBag(x1)] | = | 1 · x1 |
| [U41(x1)] | = | 1 |
| [U31(x1)] | = | 1 |
| [U102(x1, x2, x3)] | = | 1 · x3 + 1 · x2 + 1 · x2 · x3 |
| [U71(x1)] | = | 1 |
| [empty] | = | 1 |
| [union(x1, x2)] | = | 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [singl(x1)] | = | 1 |
| [U51(x1, x2)] | = | 1 |
| [U52(x1)] | = | 1 · x1 · x1 |
| [U61(x1, x2)] | = | 1 · x1 |
| [sum(x1)] | = | 0 |
| [prod(x1)] | = | 0 |
| [U112(x1, x2, x3)] | = | 1 · x3 + 1 · x2 · x3 + 1 · x1 · x3 + 1 · x1 · x2 |
| [U62(x1)] | = | 1 · x1 · x1 |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U11(tt) | → | tt | (6) |
| U81(tt) | → | tt | (31) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| U41(tt) | → | tt | (25) |
| U31(tt) | → | tt | (24) |
| U91(tt) | → | z | (32) |
| U22(tt) | → | tt | (23) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| U71(tt) | → | tt | (30) |
| isBag(empty) | → | tt | (33) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| isBin(z) | → | tt | (36) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U121(tt,X) | → | X | (9) |
| U52(tt) | → | tt | (27) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| U62(tt) | → | tt | (29) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| mult(x,y) | → | mult(y,x) | (56) |
| mult(mult(x,y),z') | → | mult(x,mult(y,z')) | (59) |
| mult#(mult(1(X),Y),ext) | → | U111#(isBin(X),X,Y) | (154) |
| mult#(mult(1(X),Y),ext) | → | mult#(U111(isBin(X),X,Y),ext) | (153) |
| mult#(1(X),Y) | → | U111#(isBin(X),X,Y) | (128) |
The dependency pairs are split into 1 component.
| mult#(0(X),Y) | → | U101#(isBin(X),X,Y) | (126) |
| U101#(tt,X,Y) | → | U102#(isBin(Y),X,Y) | (71) |
| U102#(tt,X,Y) | → | mult#(X,Y) | (74) |
| mult#(mult(z,X),ext) | → | mult#(U91(isBin(X)),ext) | (147) |
| mult#(mult(0(X),Y),ext) | → | mult#(U101(isBin(X),X,Y),ext) | (150) |
| mult#(mult(0(X),Y),ext) | → | U101#(isBin(X),X,Y) | (151) |
| mult#(mult(x,y),z') | → | mult#(y,z') | (68) |
| mult#(x,y) | → | mult#(y,x) | (62) |
| mult#(mult(x,y),z') | → | mult#(x,mult(y,z')) | (65) |
| [mult#(x1, x2)] | = | 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [mult(x1, x2)] | = | 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [z] | = | 0 |
| [U91(x1)] | = | 0 |
| [isBin(x1)] | = | 1 |
| [U101#(x1, x2, x3)] | = | 1 · x3 + 1 · x2 · x3 + 1 · x1 · x2 |
| [tt] | = | 1 |
| [U102#(x1, x2, x3)] | = | 1 · x3 + 1 · x1 · x2 + 1 · x1 · x2 · x3 |
| [0(x1)] | = | 1 + 1 · x1 |
| [U101(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 + 1 · x2 · x3 |
| [plus(x1, x2)] | = | 1 · x2 + 1 · x1 |
| [U131(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 |
| [1(x1)] | = | 1 + 1 · x1 |
| [U141(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 |
| [U151(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 + 1 · x1 |
| [U121(x1, x2)] | = | 1 · x1 · x2 |
| [U41(x1)] | = | 1 · x1 |
| [U132(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 |
| [U152(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 + 1 · x1 |
| [U21(x1, x2)] | = | 1 + 1 · x2 + 1 · x1 |
| [U22(x1)] | = | 1 + 1 · x1 |
| [isBag(x1)] | = | 1 + 1 · x1 |
| [U142(x1, x2, x3)] | = | 1 + 1 · x1 · x3 + 1 · x1 · x2 |
| [U71(x1)] | = | 1 |
| [U81(x1)] | = | 1 |
| [U111(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 + 1 · x2 · x3 + 1 · x1 · x3 |
| [U112(x1, x2, x3)] | = | 1 · x3 + 1 · x1 + 1 · x1 · x3 + 1 · x1 · x2 + 1 · x1 · x2 · x3 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 1 + 1 · x2 + 1 · x1 + 1 · x1 · x2 |
| [singl(x1)] | = | 1 |
| [U11(x1)] | = | 1 |
| [U102(x1, x2, x3)] | = | 1 + 1 · x3 + 1 · x2 + 1 · x2 · x3 |
| [U62(x1)] | = | 1 |
| [U61(x1, x2)] | = | 1 · x1 |
| [U51(x1, x2)] | = | 1 |
| [U31(x1)] | = | 1 |
| [sum(x1)] | = | 0 |
| [prod(x1)] | = | 0 |
| [U52(x1)] | = | 1 |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U41(tt) | → | tt | (25) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U71(tt) | → | tt | (30) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U81(tt) | → | tt | (31) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| isBag(empty) | → | tt | (33) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| U22(tt) | → | tt | (23) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U121(tt,X) | → | X | (9) |
| U62(tt) | → | tt | (29) |
| U11(tt) | → | tt | (6) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U91(tt) | → | z | (32) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| isBin(z) | → | tt | (36) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U31(tt) | → | tt | (24) |
| U52(tt) | → | tt | (27) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| 0(z) | → | z | (3) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| mult(x,y) | → | mult(y,x) | (56) |
| mult(mult(x,y),z') | → | mult(x,mult(y,z')) | (59) |
| mult#(mult(0(X),Y),ext) | → | U101#(isBin(X),X,Y) | (151) |
| mult#(0(X),Y) | → | U101#(isBin(X),X,Y) | (126) |
The dependency pairs are split into 1 component.
| mult#(mult(z,X),ext) | → | mult#(U91(isBin(X)),ext) | (147) |
| mult#(mult(0(X),Y),ext) | → | mult#(U101(isBin(X),X,Y),ext) | (150) |
| mult#(mult(x,y),z') | → | mult#(y,z') | (68) |
| mult#(x,y) | → | mult#(y,x) | (62) |
| mult#(mult(x,y),z') | → | mult#(x,mult(y,z')) | (65) |
| [mult#(x1, x2)] | = | 2 · x1 + 2 · x2 |
| [mult(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
| [z] | = | 0 |
| [U91(x1)] | = | 0 |
| [isBin(x1)] | = | 0 |
| [0(x1)] | = | 0 |
| [U101(x1, x2, x3)] | = | 0 |
| [U52(x1)] | = | 3 |
| [tt] | = | 0 |
| [U11(x1)] | = | 3 |
| [U102(x1, x2, x3)] | = | 0 |
| [U152(x1, x2, x3)] | = | 0 |
| [plus(x1, x2)] | = | 2 + 1 · x1 + 1 · x2 |
| [1(x1)] | = | 2 |
| [U141(x1, x2, x3)] | = | 3 |
| [U142(x1, x2, x3)] | = | 3 |
| [U22(x1)] | = | 3 |
| [U31(x1)] | = | 3 |
| [U151(x1, x2, x3)] | = | 0 |
| [U111(x1, x2, x3)] | = | 3 + 1 · x3 |
| [U51(x1, x2)] | = | 3 + 3 · x2 |
| [U41(x1)] | = | 3 |
| [U61(x1, x2)] | = | 3 + 3 · x2 |
| [sum(x1)] | = | 0 |
| [U81(x1)] | = | 3 |
| [isBag(x1)] | = | 0 |
| [prod(x1)] | = | 0 |
| [U71(x1)] | = | 3 |
| [U62(x1)] | = | 3 |
| [U131(x1, x2, x3)] | = | 2 |
| [U121(x1, x2)] | = | 1 · x2 |
| [U112(x1, x2, x3)] | = | 2 + 1 · x3 |
| [U132(x1, x2, x3)] | = | 2 |
| [U21(x1, x2)] | = | 3 + 3 · x2 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 0 |
| [singl(x1)] | = | 0 |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| U91(tt) | → | z | (32) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U121(tt,X) | → | X | (9) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| mult(x,y) | → | mult(y,x) | (56) |
| mult(mult(x,y),z') | → | mult(x,mult(y,z')) | (59) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| mult#(mult(x,y),z') | → | mult#(y,z') | (68) |
| mult#(mult(z,X),ext) | → | mult#(U91(isBin(X)),ext) | (147) |
| mult#(mult(0(X),Y),ext) | → | mult#(U101(isBin(X),X,Y),ext) | (150) |
| U192#(tt,A,B) | → | sum#(A) | (100) |
| sum#(union(A,B)) | → | U191#(isBag(A),A,B) | (145) |
| U191#(tt,A,B) | → | U192#(isBag(B),A,B) | (97) |
| U192#(tt,A,B) | → | sum#(B) | (101) |
| [U22(x1)] | = | 1 · x1 |
| [tt] | = | 2 |
| [U81(x1)] | = | 2 + 1 · x1 |
| [isBag(x1)] | = | 2 · x1 |
| [empty] | = | 2 |
| [U41(x1)] | = | 1 · x1 |
| [isBin(x1)] | = | 1 + 1 · x1 |
| [mult(x1, x2)] | = | 1 + 2 · x1 + 3 · x2 |
| [U51(x1, x2)] | = | 1 · x1 + 3 · x2 |
| [U61(x1, x2)] | = | 1 + 1 · x1 + 2 · x2 |
| [U62(x1)] | = | 2 · x1 |
| [z] | = | 1 |
| [1(x1)] | = | 1 + 2 · x1 |
| [U52(x1)] | = | 2 · x1 |
| [prod(x1)] | = | 3 + 3 · x1 |
| [U71(x1)] | = | 2 + 1 · x1 |
| [U21(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [union(x1, x2)] | = | 3 · x1 + 3 · x2 |
| [U11(x1)] | = | 2 + 2 · x1 |
| [0(x1)] | = | 3 + 3 · x1 |
| [U31(x1)] | = | 2 · x1 |
| [plus(x1, x2)] | = | 3 + 2 · x1 + 3 · x2 |
| [singl(x1)] | = | 2 + 2 · x1 |
| [sum(x1)] | = | 3 + 3 · x1 |
| [U192#(x1, x2, x3)] | = | 1 · x1 + 1 · x2 + 1 · x3 |
| [sum#(x1)] | = | 1 · x1 |
| [U191#(x1, x2, x3)] | = | 1 · x1 + 1 · x2 + 3 · x3 |
| U22(tt) | → | tt | (23) |
| U81(tt) | → | tt | (31) |
| isBag(empty) | → | tt | (33) |
| U41(tt) | → | tt | (25) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| isBin(z) | → | tt | (36) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| U11(tt) | → | tt | (6) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| U52(tt) | → | tt | (27) |
| U71(tt) | → | tt | (30) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| U31(tt) | → | tt | (24) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| U62(tt) | → | tt | (29) |
| U192#(tt,A,B) | → | sum#(B) | (101) |
| U191#(tt,A,B) | → | U192#(isBag(B),A,B) | (97) |
| sum#(union(A,B)) | → | U191#(isBag(A),A,B) | (145) |
| U192#(tt,A,B) | → | sum#(A) | (100) |
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U11(tt) | → | tt | (6) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U121(tt,X) | → | X | (9) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U161(tt,X) | → | X | (16) |
| U171(tt,A,B) | → | U172(isBag(B),A,B) | (17) |
| U172(tt,A,B) | → | mult(prod(A),prod(B)) | (18) |
| U181(tt,X) | → | X | (19) |
| U191(tt,A,B) | → | U192(isBag(B),A,B) | (20) |
| U192(tt,A,B) | → | plus(sum(A),sum(B)) | (21) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| U31(tt) | → | tt | (24) |
| U52(tt) | → | tt | (27) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| U62(tt) | → | tt | (29) |
| U71(tt) | → | tt | (30) |
| U81(tt) | → | tt | (31) |
| U91(tt) | → | z | (32) |
| isBag(empty) | → | tt | (33) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBin(z) | → | tt | (36) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| prod(empty) | → | 1(z) | (50) |
| prod(singl(X)) | → | U161(isBin(X),X) | (51) |
| prod(union(A,B)) | → | U171(isBag(A),A,B) | (52) |
| sum(empty) | → | 0(z) | (53) |
| sum(singl(X)) | → | U181(isBin(X),X) | (54) |
| sum(union(A,B)) | → | U191(isBag(A),A,B) | (55) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
| U132#(tt,X,Y) | → | plus#(X,Y) | (83) |
| plus#(0(X),0(Y)) | → | U131#(isBin(X),X,Y) | (132) |
| U131#(tt,X,Y) | → | U132#(isBin(Y),X,Y) | (80) |
| plus#(0(X),1(Y)) | → | U141#(isBin(X),X,Y) | (134) |
| U141#(tt,X,Y) | → | U142#(isBin(Y),X,Y) | (84) |
| U142#(tt,X,Y) | → | plus#(X,Y) | (86) |
| plus#(1(X),1(Y)) | → | U151#(isBin(X),X,Y) | (136) |
| U151#(tt,X,Y) | → | U152#(isBin(Y),X,Y) | (87) |
| U152#(tt,X,Y) | → | plus#(plus(X,Y),1(z)) | (90) |
| plus#(plus(z,X),ext) | → | plus#(U121(isBin(X),X),ext) | (156) |
| plus#(plus(0(X),0(Y)),ext) | → | plus#(U131(isBin(X),X,Y),ext) | (159) |
| plus#(plus(0(X),0(Y)),ext) | → | U131#(isBin(X),X,Y) | (160) |
| plus#(plus(0(X),1(Y)),ext) | → | plus#(U141(isBin(X),X,Y),ext) | (162) |
| plus#(plus(0(X),1(Y)),ext) | → | U141#(isBin(X),X,Y) | (163) |
| plus#(plus(1(X),1(Y)),ext) | → | plus#(U151(isBin(X),X,Y),ext) | (165) |
| plus#(plus(1(X),1(Y)),ext) | → | U151#(isBin(X),X,Y) | (166) |
| plus#(plus(x,y),z') | → | plus#(y,z') | (69) |
| plus#(x,y) | → | plus#(y,x) | (63) |
| plus#(plus(x,y),z') | → | plus#(x,plus(y,z')) | (66) |
| U152#(tt,X,Y) | → | plus#(X,Y) | (91) |
| [U152#(x1, x2, x3)] | = | 2 + 2 · x2 + 2 · x3 |
| [tt] | = | 0 |
| [plus#(x1, x2)] | = | 2 · x1 + 2 · x2 |
| [U151#(x1, x2, x3)] | = | 3 + 2 · x2 + 2 · x3 |
| [isBin(x1)] | = | 0 |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [0(x1)] | = | 1 · x1 |
| [U131#(x1, x2, x3)] | = | 2 · x2 + 2 · x3 |
| [1(x1)] | = | 1 + 1 · x1 |
| [U141(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [z] | = | 0 |
| [U141#(x1, x2, x3)] | = | 2 + 2 · x2 + 2 · x3 |
| [U142#(x1, x2, x3)] | = | 2 + 2 · x2 + 2 · x3 |
| [U132#(x1, x2, x3)] | = | 2 · x2 + 2 · x3 |
| [U121(x1, x2)] | = | 1 · x2 |
| [U131(x1, x2, x3)] | = | 1 · x2 + 1 · x3 |
| [U151(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [mult(x1, x2)] | = | 0 |
| [U51(x1, x2)] | = | 3 + 3 · x2 |
| [U31(x1)] | = | 3 |
| [U61(x1, x2)] | = | 3 + 3 · x2 |
| [sum(x1)] | = | 0 |
| [U81(x1)] | = | 3 |
| [isBag(x1)] | = | 0 |
| [U41(x1)] | = | 3 |
| [prod(x1)] | = | 0 |
| [U71(x1)] | = | 3 |
| [U132(x1, x2, x3)] | = | 1 · x2 + 1 · x3 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 0 |
| [U21(x1, x2)] | = | 3 + 3 · x2 |
| [singl(x1)] | = | 0 |
| [U11(x1)] | = | 3 |
| [U22(x1)] | = | 3 |
| [U52(x1)] | = | 3 |
| [U152(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U142(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U62(x1)] | = | 3 |
| 0(z) | → | z | (3) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U121(tt,X) | → | X | (9) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| U152#(tt,X,Y) | → | plus#(X,Y) | (91) |
| U151#(tt,X,Y) | → | U152#(isBin(Y),X,Y) | (87) |
| plus#(plus(1(X),1(Y)),ext) | → | U151#(isBin(X),X,Y) | (166) |
| plus#(1(X),1(Y)) | → | U151#(isBin(X),X,Y) | (136) |
| plus#(plus(1(X),1(Y)),ext) | → | plus#(U151(isBin(X),X,Y),ext) | (165) |
| U142#(tt,X,Y) | → | plus#(X,Y) | (86) |
The dependency pairs are split into 1 component.
| U131#(tt,X,Y) | → | U132#(isBin(Y),X,Y) | (80) |
| U132#(tt,X,Y) | → | plus#(X,Y) | (83) |
| plus#(0(X),0(Y)) | → | U131#(isBin(X),X,Y) | (132) |
| plus#(plus(z,X),ext) | → | plus#(U121(isBin(X),X),ext) | (156) |
| plus#(plus(0(X),0(Y)),ext) | → | plus#(U131(isBin(X),X,Y),ext) | (159) |
| plus#(plus(0(X),0(Y)),ext) | → | U131#(isBin(X),X,Y) | (160) |
| plus#(plus(0(X),1(Y)),ext) | → | plus#(U141(isBin(X),X,Y),ext) | (162) |
| plus#(plus(x,y),z') | → | plus#(y,z') | (69) |
| plus#(x,y) | → | plus#(y,x) | (63) |
| plus#(plus(x,y),z') | → | plus#(x,plus(y,z')) | (66) |
| [U131#(x1, x2, x3)] | = | 1 · x2 + 1 · x3 |
| [tt] | = | 0 |
| [U132#(x1, x2, x3)] | = | 1 · x2 + 1 · x3 |
| [isBin(x1)] | = | 0 |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [0(x1)] | = | 1 + 1 · x1 |
| [z] | = | 0 |
| [U121(x1, x2)] | = | 1 · x2 |
| [1(x1)] | = | 1 + 1 · x1 |
| [U141(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U131(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U31(x1)] | = | 3 |
| [U41(x1)] | = | 3 |
| [U132(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U142(x1, x2, x3)] | = | 1 + 1 · x2 + 1 · x3 |
| [U21(x1, x2)] | = | 3 + 3 · x2 |
| [U22(x1)] | = | 3 |
| [isBag(x1)] | = | 0 |
| [mult(x1, x2)] | = | 0 |
| [U51(x1, x2)] | = | 3 + 3 · x2 |
| [U61(x1, x2)] | = | 3 + 3 · x2 |
| [sum(x1)] | = | 0 |
| [U81(x1)] | = | 3 |
| [prod(x1)] | = | 0 |
| [U71(x1)] | = | 3 |
| [U52(x1)] | = | 3 |
| [U62(x1)] | = | 3 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 0 |
| [singl(x1)] | = | 0 |
| [U11(x1)] | = | 3 |
| [U151(x1, x2, x3)] | = | 2 + 1 · x2 + 1 · x3 |
| [U152(x1, x2, x3)] | = | 2 + 1 · x2 + 1 · x3 |
| 0(z) | → | z | (3) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U121(tt,X) | → | X | (9) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| plus#(plus(0(X),0(Y)),ext) | → | U131#(isBin(X),X,Y) | (160) |
| plus#(0(X),0(Y)) | → | U131#(isBin(X),X,Y) | (132) |
| plus#(plus(0(X),1(Y)),ext) | → | plus#(U141(isBin(X),X,Y),ext) | (162) |
| plus#(plus(0(X),0(Y)),ext) | → | plus#(U131(isBin(X),X,Y),ext) | (159) |
The dependency pairs are split into 1 component.
| plus#(plus(x,y),z') | → | plus#(y,z') | (69) |
| plus#(plus(z,X),ext) | → | plus#(U121(isBin(X),X),ext) | (156) |
| plus#(x,y) | → | plus#(y,x) | (63) |
| plus#(plus(x,y),z') | → | plus#(x,plus(y,z')) | (66) |
| [plus#(x1, x2)] | = | 2 · x1 + 2 · x2 |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [z] | = | 1 |
| [U121(x1, x2)] | = | 1 · x2 |
| [isBin(x1)] | = | 0 |
| [U131(x1, x2, x3)] | = | 1 |
| [tt] | = | 0 |
| [U132(x1, x2, x3)] | = | 1 |
| [U11(x1)] | = | 3 |
| [U141(x1, x2, x3)] | = | 1 |
| [U142(x1, x2, x3)] | = | 1 |
| [U71(x1)] | = | 3 |
| [isBag(x1)] | = | 0 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 0 |
| [U21(x1, x2)] | = | 3 + 3 · x2 |
| [singl(x1)] | = | 0 |
| [0(x1)] | = | 1 |
| [mult(x1, x2)] | = | 0 |
| [U51(x1, x2)] | = | 3 + 3 · x2 |
| [U31(x1)] | = | 3 |
| [U61(x1, x2)] | = | 3 + 3 · x2 |
| [sum(x1)] | = | 0 |
| [U81(x1)] | = | 3 |
| [1(x1)] | = | 1 |
| [U41(x1)] | = | 3 |
| [prod(x1)] | = | 0 |
| [U151(x1, x2, x3)] | = | 2 |
| [U152(x1, x2, x3)] | = | 2 |
| [U62(x1)] | = | 3 |
| [U52(x1)] | = | 3 |
| [U22(x1)] | = | 3 |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| 0(z) | → | z | (3) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U121(tt,X) | → | X | (9) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| plus#(plus(z,X),ext) | → | plus#(U121(isBin(X),X),ext) | (156) |
| [plus#(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [plus(x1, x2)] | = | 3 + 1 · x1 + 1 · x2 |
| [U11(x1)] | = | 3 |
| [tt] | = | 0 |
| [0(x1)] | = | 0 |
| [z] | = | 0 |
| [U51(x1, x2)] | = | 3 + 3 · x2 |
| [U52(x1)] | = | 3 |
| [isBin(x1)] | = | 0 |
| [U131(x1, x2, x3)] | = | 2 |
| [1(x1)] | = | 0 |
| [U151(x1, x2, x3)] | = | 2 |
| [U141(x1, x2, x3)] | = | 3 |
| [U121(x1, x2)] | = | 1 · x2 |
| [U132(x1, x2, x3)] | = | 0 |
| [U142(x1, x2, x3)] | = | 2 |
| [U41(x1)] | = | 3 |
| [mult(x1, x2)] | = | 0 |
| [U31(x1)] | = | 3 |
| [U61(x1, x2)] | = | 3 + 3 · x2 |
| [sum(x1)] | = | 0 |
| [U81(x1)] | = | 3 |
| [isBag(x1)] | = | 0 |
| [prod(x1)] | = | 0 |
| [U71(x1)] | = | 3 |
| [U22(x1)] | = | 3 |
| [empty] | = | 0 |
| [union(x1, x2)] | = | 0 |
| [U21(x1, x2)] | = | 3 + 3 · x2 |
| [singl(x1)] | = | 0 |
| [U152(x1, x2, x3)] | = | 0 |
| [U62(x1)] | = | 3 |
| 0(z) | → | z | (3) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U121(tt,X) | → | X | (9) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| plus(x,y) | → | plus(y,x) | (57) |
| plus#(plus(x,y),z') | → | plus#(y,z') | (69) |
| U21#(tt,V2) | → | isBag#(V2) | (103) |
| isBag#(singl(V1)) | → | isBin#(V1) | (109) |
| isBin#(0(V1)) | → | isBin#(V1) | (113) |
| isBin#(1(V1)) | → | isBin#(V1) | (115) |
| isBin#(mult(V1,V2)) | → | U51#(isBin(V1),V2) | (116) |
| U51#(tt,V2) | → | isBin#(V2) | (105) |
| isBin#(mult(V1,V2)) | → | isBin#(V1) | (117) |
| isBin#(plus(V1,V2)) | → | U61#(isBin(V1),V2) | (118) |
| U61#(tt,V2) | → | isBin#(V2) | (107) |
| isBin#(plus(V1,V2)) | → | isBin#(V1) | (119) |
| isBin#(prod(V1)) | → | isBag#(V1) | (121) |
| isBag#(union(V1,V2)) | → | U21#(isBag(V1),V2) | (110) |
| isBag#(union(V1,V2)) | → | isBag#(V1) | (111) |
| isBin#(sum(V1)) | → | isBag#(V1) | (123) |
| [U22(x1)] | = | 1 · x1 |
| [tt] | = | 0 |
| [U81(x1)] | = | 1 · x1 |
| [isBag(x1)] | = | 2 · x1 |
| [empty] | = | 0 |
| [U41(x1)] | = | 1 · x1 |
| [isBin(x1)] | = | 2 · x1 |
| [mult(x1, x2)] | = | 3 · x1 + 3 · x2 |
| [U51(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [U61(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [U62(x1)] | = | 1 · x1 |
| [z] | = | 0 |
| [1(x1)] | = | 3 + 1 · x1 |
| [U52(x1)] | = | 1 · x1 |
| [prod(x1)] | = | 2 · x1 |
| [U71(x1)] | = | 1 · x1 |
| [U21(x1, x2)] | = | 1 · x1 + 3 · x2 |
| [union(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [U11(x1)] | = | 2 · x1 |
| [0(x1)] | = | 3 + 3 · x1 |
| [U31(x1)] | = | 2 · x1 |
| [plus(x1, x2)] | = | 3 + 3 · x1 + 3 · x2 |
| [singl(x1)] | = | 3 · x1 |
| [sum(x1)] | = | 2 · x1 |
| [U51#(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [isBin#(x1)] | = | 2 · x1 |
| [U61#(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [U21#(x1, x2)] | = | 2 · x1 + 3 · x2 |
| [isBag#(x1)] | = | 3 · x1 |
| U22(tt) | → | tt | (23) |
| U81(tt) | → | tt | (31) |
| isBag(empty) | → | tt | (33) |
| U41(tt) | → | tt | (25) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| isBin(z) | → | tt | (36) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| U11(tt) | → | tt | (6) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| U52(tt) | → | tt | (27) |
| U71(tt) | → | tt | (30) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| U31(tt) | → | tt | (24) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| U62(tt) | → | tt | (29) |
| isBin#(plus(V1,V2)) | → | isBin#(V1) | (119) |
| isBin#(0(V1)) | → | isBin#(V1) | (113) |
| isBag#(singl(V1)) | → | isBin#(V1) | (109) |
| isBin#(prod(V1)) | → | isBag#(V1) | (121) |
| isBin#(1(V1)) | → | isBin#(V1) | (115) |
| isBin#(sum(V1)) | → | isBag#(V1) | (123) |
| isBag#(union(V1,V2)) | → | U21#(isBag(V1),V2) | (110) |
| isBin#(plus(V1,V2)) | → | U61#(isBin(V1),V2) | (118) |
| isBin#(mult(V1,V2)) | → | isBin#(V1) | (117) |
| isBin#(mult(V1,V2)) | → | U51#(isBin(V1),V2) | (116) |
| isBag#(union(V1,V2)) | → | isBag#(V1) | (111) |
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U121(tt,X) | → | X | (9) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U161(tt,X) | → | X | (16) |
| U171(tt,A,B) | → | U172(isBag(B),A,B) | (17) |
| U172(tt,A,B) | → | mult(prod(A),prod(B)) | (18) |
| U181(tt,X) | → | X | (19) |
| U191(tt,A,B) | → | U192(isBag(B),A,B) | (20) |
| U192(tt,A,B) | → | plus(sum(A),sum(B)) | (21) |
| U91(tt) | → | z | (32) |
| isBag(empty) | → | tt | (33) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBin(z) | → | tt | (36) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| prod(empty) | → | 1(z) | (50) |
| prod(singl(X)) | → | U161(isBin(X),X) | (51) |
| prod(union(A,B)) | → | U171(isBag(A),A,B) | (52) |
| sum(empty) | → | 0(z) | (53) |
| sum(singl(X)) | → | U181(isBin(X),X) | (54) |
| sum(union(A,B)) | → | U191(isBag(A),A,B) | (55) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
The dependency pairs are split into 0 components.
| union#(union(empty,X),ext) | → | union#(X,ext) | (169) |
| union#(union(X,empty),ext) | → | union#(X,ext) | (168) |
| union#(union(x,y),z') | → | union#(y,z') | (70) |
| union#(x,y) | → | union#(y,x) | (64) |
| union#(union(x,y),z') | → | union#(x,union(y,z')) | (67) |
| [union#(x1, x2)] | = | 3 · x1 + 3 · x2 |
| [union(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [empty] | = | 0 |
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
| union(union(x,y),z') | → | union(x,union(y,z')) | (61) |
| union(x,y) | → | union(y,x) | (58) |
| union#(union(empty,X),ext) | → | union#(X,ext) | (169) |
| union#(union(X,empty),ext) | → | union#(X,ext) | (168) |
| union(X,empty) | → | X | (1) |
| union(empty,X) | → | X | (2) |
| 0(z) | → | z | (3) |
| U101(tt,X,Y) | → | U102(isBin(Y),X,Y) | (4) |
| U102(tt,X,Y) | → | 0(mult(X,Y)) | (5) |
| U11(tt) | → | tt | (6) |
| U111(tt,X,Y) | → | U112(isBin(Y),X,Y) | (7) |
| U112(tt,X,Y) | → | plus(0(mult(X,Y)),Y) | (8) |
| U121(tt,X) | → | X | (9) |
| U131(tt,X,Y) | → | U132(isBin(Y),X,Y) | (10) |
| U132(tt,X,Y) | → | 0(plus(X,Y)) | (11) |
| U141(tt,X,Y) | → | U142(isBin(Y),X,Y) | (12) |
| U142(tt,X,Y) | → | 1(plus(X,Y)) | (13) |
| U151(tt,X,Y) | → | U152(isBin(Y),X,Y) | (14) |
| U152(tt,X,Y) | → | 0(plus(plus(X,Y),1(z))) | (15) |
| U161(tt,X) | → | X | (16) |
| U171(tt,A,B) | → | U172(isBag(B),A,B) | (17) |
| U172(tt,A,B) | → | mult(prod(A),prod(B)) | (18) |
| U181(tt,X) | → | X | (19) |
| U191(tt,A,B) | → | U192(isBag(B),A,B) | (20) |
| U192(tt,A,B) | → | plus(sum(A),sum(B)) | (21) |
| U21(tt,V2) | → | U22(isBag(V2)) | (22) |
| U22(tt) | → | tt | (23) |
| U31(tt) | → | tt | (24) |
| U41(tt) | → | tt | (25) |
| U51(tt,V2) | → | U52(isBin(V2)) | (26) |
| U52(tt) | → | tt | (27) |
| U61(tt,V2) | → | U62(isBin(V2)) | (28) |
| U62(tt) | → | tt | (29) |
| U71(tt) | → | tt | (30) |
| U81(tt) | → | tt | (31) |
| U91(tt) | → | z | (32) |
| isBag(empty) | → | tt | (33) |
| isBag(singl(V1)) | → | U11(isBin(V1)) | (34) |
| isBag(union(V1,V2)) | → | U21(isBag(V1),V2) | (35) |
| isBin(z) | → | tt | (36) |
| isBin(0(V1)) | → | U31(isBin(V1)) | (37) |
| isBin(1(V1)) | → | U41(isBin(V1)) | (38) |
| isBin(mult(V1,V2)) | → | U51(isBin(V1),V2) | (39) |
| isBin(plus(V1,V2)) | → | U61(isBin(V1),V2) | (40) |
| isBin(prod(V1)) | → | U71(isBag(V1)) | (41) |
| isBin(sum(V1)) | → | U81(isBag(V1)) | (42) |
| mult(z,X) | → | U91(isBin(X)) | (43) |
| mult(0(X),Y) | → | U101(isBin(X),X,Y) | (44) |
| mult(1(X),Y) | → | U111(isBin(X),X,Y) | (45) |
| plus(z,X) | → | U121(isBin(X),X) | (46) |
| plus(0(X),0(Y)) | → | U131(isBin(X),X,Y) | (47) |
| plus(0(X),1(Y)) | → | U141(isBin(X),X,Y) | (48) |
| plus(1(X),1(Y)) | → | U151(isBin(X),X,Y) | (49) |
| prod(empty) | → | 1(z) | (50) |
| prod(singl(X)) | → | U161(isBin(X),X) | (51) |
| prod(union(A,B)) | → | U171(isBag(A),A,B) | (52) |
| sum(empty) | → | 0(z) | (53) |
| sum(singl(X)) | → | U181(isBin(X),X) | (54) |
| sum(union(A,B)) | → | U191(isBag(A),A,B) | (55) |
| mult(mult(z,X),ext) | → | mult(U91(isBin(X)),ext) | (170) |
| mult(mult(0(X),Y),ext) | → | mult(U101(isBin(X),X,Y),ext) | (171) |
| mult(mult(1(X),Y),ext) | → | mult(U111(isBin(X),X,Y),ext) | (172) |
| plus(plus(z,X),ext) | → | plus(U121(isBin(X),X),ext) | (173) |
| plus(plus(0(X),0(Y)),ext) | → | plus(U131(isBin(X),X,Y),ext) | (174) |
| plus(plus(0(X),1(Y)),ext) | → | plus(U141(isBin(X),X,Y),ext) | (175) |
| plus(plus(1(X),1(Y)),ext) | → | plus(U151(isBin(X),X,Y),ext) | (176) |
| union(union(X,empty),ext) | → | union(X,ext) | (177) |
| union(union(empty,X),ext) | → | union(X,ext) | (178) |
| [union#(x1, x2)] | = | 3 · x1 + 3 · x2 |
| [union(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
| [mult(x1, x2)] | = | 1 · x1 + 1 · x2 |
| [plus(x1, x2)] | = | 1 · x1 + 1 · x2 |
| mult(x,y) | → | mult(y,x) | (56) |
| plus(x,y) | → | plus(y,x) | (57) |
| union(x,y) | → | union(y,x) | (58) |
| mult(mult(x,y),z') | → | mult(x,mult(y,z')) | (59) |
| plus(plus(x,y),z') | → | plus(x,plus(y,z')) | (60) |
| union(union(x,y),z') | → | union(x,union(y,z')) | (61) |
| union#(union(x,y),z') | → | union#(y,z') | (70) |