The rewrite relation of the following TRS is considered.
top1(free(x),y) | → | top2(check(new(x)),y) | (1) |
top1(free(x),y) | → | top2(new(x),check(y)) | (2) |
top1(free(x),y) | → | top2(check(x),new(y)) | (3) |
top1(free(x),y) | → | top2(x,check(new(y))) | (4) |
top2(x,free(y)) | → | top1(check(new(x)),y) | (5) |
top2(x,free(y)) | → | top1(new(x),check(y)) | (6) |
top2(x,free(y)) | → | top1(check(x),new(y)) | (7) |
top2(x,free(y)) | → | top1(x,check(new(y))) | (8) |
new(free(x)) | → | free(new(x)) | (9) |
old(free(x)) | → | free(old(x)) | (10) |
new(serve) | → | free(serve) | (11) |
old(serve) | → | free(serve) | (12) |
check(free(x)) | → | free(check(x)) | (13) |
check(new(x)) | → | new(check(x)) | (14) |
check(old(x)) | → | old(check(x)) | (15) |
check(old(x)) | → | old(x) | (16) |
[top1(x1, x2)] | = | 2 · x1 + 2 · x2 |
[free(x1)] | = | 1 · x1 |
[top2(x1, x2)] | = | 2 · x1 + 2 · x2 |
[check(x1)] | = | 1 · x1 |
[new(x1)] | = | 1 · x1 |
[old(x1)] | = | 2 · x1 |
[serve] | = | 2 |
old(serve) | → | free(serve) | (12) |
[top1(x1, x2)] | = | 2 · x1 + 2 · x2 |
[free(x1)] | = | 2 + 1 · x1 |
[top2(x1, x2)] | = | 2 · x1 + 2 · x2 |
[check(x1)] | = | 1 · x1 |
[new(x1)] | = | 2 + 1 · x1 |
[old(x1)] | = | 2 · x1 |
[serve] | = | 0 |
old(free(x)) | → | free(old(x)) | (10) |
top1#(free(x),y) | → | top2#(check(new(x)),y) | (17) |
top1#(free(x),y) | → | check#(new(x)) | (18) |
top1#(free(x),y) | → | new#(x) | (19) |
top1#(free(x),y) | → | top2#(new(x),check(y)) | (20) |
top1#(free(x),y) | → | check#(y) | (21) |
top1#(free(x),y) | → | top2#(check(x),new(y)) | (22) |
top1#(free(x),y) | → | check#(x) | (23) |
top1#(free(x),y) | → | new#(y) | (24) |
top1#(free(x),y) | → | top2#(x,check(new(y))) | (25) |
top1#(free(x),y) | → | check#(new(y)) | (26) |
top2#(x,free(y)) | → | top1#(check(new(x)),y) | (27) |
top2#(x,free(y)) | → | check#(new(x)) | (28) |
top2#(x,free(y)) | → | new#(x) | (29) |
top2#(x,free(y)) | → | top1#(new(x),check(y)) | (30) |
top2#(x,free(y)) | → | check#(y) | (31) |
top2#(x,free(y)) | → | top1#(check(x),new(y)) | (32) |
top2#(x,free(y)) | → | check#(x) | (33) |
top2#(x,free(y)) | → | new#(y) | (34) |
top2#(x,free(y)) | → | top1#(x,check(new(y))) | (35) |
top2#(x,free(y)) | → | check#(new(y)) | (36) |
new#(free(x)) | → | new#(x) | (37) |
check#(free(x)) | → | check#(x) | (38) |
check#(new(x)) | → | new#(check(x)) | (39) |
check#(new(x)) | → | check#(x) | (40) |
check#(old(x)) | → | check#(x) | (41) |
The dependency pairs are split into 3 components.
top2#(x,free(y)) | → | top1#(check(new(x)),y) | (27) |
top1#(free(x),y) | → | top2#(check(new(x)),y) | (17) |
top2#(x,free(y)) | → | top1#(new(x),check(y)) | (30) |
top1#(free(x),y) | → | top2#(new(x),check(y)) | (20) |
top2#(x,free(y)) | → | top1#(check(x),new(y)) | (32) |
top1#(free(x),y) | → | top2#(check(x),new(y)) | (22) |
top2#(x,free(y)) | → | top1#(x,check(new(y))) | (35) |
top1#(free(x),y) | → | top2#(x,check(new(y))) | (25) |
[new(x1)] | = | 1 · x1 |
[free(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[check(x1)] | = | 1 · x1 |
[old(x1)] | = | 1 · x1 |
[top1#(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top2#(x1, x2)] | = | 1 · x1 + 1 · x2 |
new(free(x)) | → | free(new(x)) | (9) |
new(serve) | → | free(serve) | (11) |
check(free(x)) | → | free(check(x)) | (13) |
check(new(x)) | → | new(check(x)) | (14) |
check(old(x)) | → | old(check(x)) | (15) |
check(old(x)) | → | old(x) | (16) |
top2#(x0,free(y1)) | → | top1#(new(check(x0)),y1) | (42) |
top2#(free(x0),free(y1)) | → | top1#(check(free(new(x0))),y1) | (43) |
top2#(serve,free(y1)) | → | top1#(check(free(serve)),y1) | (44) |
top2#(free(x0),free(y1)) | → | top1#(free(new(x0)),check(y1)) | (45) |
top2#(serve,free(y1)) | → | top1#(free(serve),check(y1)) | (46) |
top1#(free(y0),free(x0)) | → | top2#(new(y0),free(check(x0))) | (47) |
top1#(free(y0),new(x0)) | → | top2#(new(y0),new(check(x0))) | (48) |
top1#(free(y0),old(x0)) | → | top2#(new(y0),old(check(x0))) | (49) |
top1#(free(y0),old(x0)) | → | top2#(new(y0),old(x0)) | (50) |
The dependency pairs are split into 1 component.
top2#(x,free(y)) | → | top1#(check(x),new(y)) | (32) |
top1#(free(x),y) | → | top2#(check(new(x)),y) | (17) |
top2#(x,free(y)) | → | top1#(x,check(new(y))) | (35) |
top1#(free(x),y) | → | top2#(check(x),new(y)) | (22) |
top2#(x0,free(y1)) | → | top1#(new(check(x0)),y1) | (42) |
top1#(free(x),y) | → | top2#(x,check(new(y))) | (25) |
top2#(free(x0),free(y1)) | → | top1#(check(free(new(x0))),y1) | (43) |
top1#(free(y0),free(x0)) | → | top2#(new(y0),free(check(x0))) | (47) |
top2#(free(x0),free(y1)) | → | top1#(free(new(x0)),check(y1)) | (45) |
top1#(free(y0),new(x0)) | → | top2#(new(y0),new(check(x0))) | (48) |
top2#(serve,free(y1)) | → | top1#(check(free(serve)),y1) | (44) |
top2#(serve,free(y1)) | → | top1#(free(serve),check(y1)) | (46) |
top2#(free(x0),free(y1)) | → | top1#(free(check(x0)),new(y1)) | (51) |
top2#(new(x0),free(y1)) | → | top1#(new(check(x0)),new(y1)) | (52) |
top2#(old(x0),free(y1)) | → | top1#(old(check(x0)),new(y1)) | (53) |
top2#(old(x0),free(y1)) | → | top1#(old(x0),new(y1)) | (54) |
The dependency pairs are split into 1 component.
top2#(x,free(y)) | → | top1#(x,check(new(y))) | (35) |
top1#(free(x),y) | → | top2#(check(new(x)),y) | (17) |
top2#(x0,free(y1)) | → | top1#(new(check(x0)),y1) | (42) |
top1#(free(x),y) | → | top2#(check(x),new(y)) | (22) |
top2#(free(x0),free(y1)) | → | top1#(check(free(new(x0))),y1) | (43) |
top1#(free(x),y) | → | top2#(x,check(new(y))) | (25) |
top2#(serve,free(y1)) | → | top1#(check(free(serve)),y1) | (44) |
top1#(free(y0),free(x0)) | → | top2#(new(y0),free(check(x0))) | (47) |
top2#(free(x0),free(y1)) | → | top1#(free(new(x0)),check(y1)) | (45) |
top1#(free(y0),new(x0)) | → | top2#(new(y0),new(check(x0))) | (48) |
top2#(free(x0),free(y1)) | → | top1#(free(check(x0)),new(y1)) | (51) |
top2#(new(x0),free(y1)) | → | top1#(new(check(x0)),new(y1)) | (52) |
top2#(serve,free(y1)) | → | top1#(free(serve),check(y1)) | (46) |
top1#(free(y0),free(x0)) | → | top2#(check(y0),free(new(x0))) | (55) |
top1#(free(y0),serve) | → | top2#(check(y0),free(serve)) | (56) |
top1#(free(y0),x0) | → | top2#(y0,new(check(x0))) | (57) |
top1#(free(y0),free(x0)) | → | top2#(y0,check(free(new(x0)))) | (58) |
top1#(free(y0),serve) | → | top2#(y0,check(free(serve))) | (59) |
[top1#(x1, x2)] | = | x1 |
[top2#(x1, x2)] | = | x1 |
[new(x1)] | = | x1 |
[free(x1)] | = | x1 |
[serve] | = | 1 |
[check(x1)] | = | -2 |
[old(x1)] | = | -2 |
top2#(serve,free(y1)) | → | top1#(check(free(serve)),y1) | (44) |
[top1#(x1, x2)] | = | 2 · x2 |
[top2#(x1, x2)] | = | 2 · x2 |
[new(x1)] | = | x1 |
[free(x1)] | = | x1 |
[serve] | = | 2 |
[check(x1)] | = | -2 |
[old(x1)] | = | -2 |
top1#(free(y0),serve) | → | top2#(y0,check(free(serve))) | (59) |
As carrier we take the set {0,1}. Symbols are labeled by the interpretation of their arguments using the interpretations (modulo 2):
[old(x1)] | = | 1 |
[new(x1)] | = | 1x1 |
[top2#(x1, x2)] | = | 0 |
[serve] | = | 0 |
[check(x1)] | = | 1 |
[free(x1)] | = | 1x1 |
[top1#(x1, x2)] | = | 0 |
top2#00(x,free0(y)) | → | top1#01(x,check0(new0(y))) | (60) |
top1#00(free0(x),y) | → | top2#10(check0(new0(x)),y) | (61) |
top1#01(free0(x),y) | → | top2#11(check0(new0(x)),y) | (62) |
top1#10(free1(x),y) | → | top2#10(check1(new1(x)),y) | (63) |
top1#11(free1(x),y) | → | top2#11(check1(new1(x)),y) | (64) |
top2#01(x,free1(y)) | → | top1#01(x,check1(new1(y))) | (65) |
top2#10(x,free0(y)) | → | top1#11(x,check0(new0(y))) | (66) |
top2#11(x,free1(y)) | → | top1#11(x,check1(new1(y))) | (67) |
top1#00(free0(y0),free0(x0)) | → | top2#01(new0(y0),free1(check0(x0))) | (68) |
top1#01(free0(y0),free1(x0)) | → | top2#01(new0(y0),free1(check1(x0))) | (69) |
top1#10(free1(y0),free0(x0)) | → | top2#11(new1(y0),free1(check0(x0))) | (70) |
top1#11(free1(y0),free1(x0)) | → | top2#11(new1(y0),free1(check1(x0))) | (71) |
top1#00(free0(y0),new0(x0)) | → | top2#01(new0(y0),new1(check0(x0))) | (72) |
top1#01(free0(y0),new1(x0)) | → | top2#01(new0(y0),new1(check1(x0))) | (73) |
top1#10(free1(y0),new0(x0)) | → | top2#11(new1(y0),new1(check0(x0))) | (74) |
top1#11(free1(y0),new1(x0)) | → | top2#11(new1(y0),new1(check1(x0))) | (75) |
top1#00(free0(y0),free0(x0)) | → | top2#10(check0(y0),free0(new0(x0))) | (76) |
top1#01(free0(y0),free1(x0)) | → | top2#11(check0(y0),free1(new1(x0))) | (77) |
top1#10(free1(y0),free0(x0)) | → | top2#10(check1(y0),free0(new0(x0))) | (78) |
top1#11(free1(y0),free1(x0)) | → | top2#11(check1(y0),free1(new1(x0))) | (79) |
top1#00(free0(y0),x0) | → | top2#01(y0,new1(check0(x0))) | (80) |
top1#01(free0(y0),x0) | → | top2#01(y0,new1(check1(x0))) | (81) |
top1#10(free1(y0),x0) | → | top2#11(y0,new1(check0(x0))) | (82) |
top1#11(free1(y0),x0) | → | top2#11(y0,new1(check1(x0))) | (83) |
top1#00(free0(y0),free0(x0)) | → | top2#01(y0,check0(free0(new0(x0)))) | (84) |
top1#01(free0(y0),free1(x0)) | → | top2#01(y0,check1(free1(new1(x0)))) | (85) |
top1#10(free1(y0),free0(x0)) | → | top2#11(y0,check0(free0(new0(x0)))) | (86) |
top1#11(free1(y0),free1(x0)) | → | top2#11(y0,check1(free1(new1(x0)))) | (87) |
top2#00(x0,free0(y1)) | → | top1#10(new1(check0(x0)),y1) | (88) |
top2#01(x0,free1(y1)) | → | top1#11(new1(check0(x0)),y1) | (89) |
top2#10(x0,free0(y1)) | → | top1#10(new1(check1(x0)),y1) | (90) |
top2#11(x0,free1(y1)) | → | top1#11(new1(check1(x0)),y1) | (91) |
top2#00(free0(x0),free0(y1)) | → | top1#10(check0(free0(new0(x0))),y1) | (92) |
top2#01(free0(x0),free1(y1)) | → | top1#11(check0(free0(new0(x0))),y1) | (93) |
top2#10(free1(x0),free0(y1)) | → | top1#10(check1(free1(new1(x0))),y1) | (94) |
top2#11(free1(x0),free1(y1)) | → | top1#11(check1(free1(new1(x0))),y1) | (95) |
top2#00(free0(x0),free0(y1)) | → | top1#01(free0(new0(x0)),check0(y1)) | (96) |
top2#01(free0(x0),free1(y1)) | → | top1#01(free0(new0(x0)),check1(y1)) | (97) |
top2#10(free1(x0),free0(y1)) | → | top1#11(free1(new1(x0)),check0(y1)) | (98) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(new1(x0)),check1(y1)) | (99) |
top2#00(free0(x0),free0(y1)) | → | top1#10(free1(check0(x0)),new0(y1)) | (100) |
top2#01(free0(x0),free1(y1)) | → | top1#11(free1(check0(x0)),new1(y1)) | (101) |
top2#10(free1(x0),free0(y1)) | → | top1#10(free1(check1(x0)),new0(y1)) | (102) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(check1(x0)),new1(y1)) | (103) |
top2#00(new0(x0),free0(y1)) | → | top1#10(new1(check0(x0)),new0(y1)) | (104) |
top2#01(new0(x0),free1(y1)) | → | top1#11(new1(check0(x0)),new1(y1)) | (105) |
top2#10(new1(x0),free0(y1)) | → | top1#10(new1(check1(x0)),new0(y1)) | (106) |
top2#11(new1(x0),free1(y1)) | → | top1#11(new1(check1(x0)),new1(y1)) | (107) |
top1#00(free0(y0),serve) | → | top2#10(check0(y0),free0(serve)) | (108) |
top1#10(free1(y0),serve) | → | top2#10(check1(y0),free0(serve)) | (109) |
top2#00(serve,free0(y1)) | → | top1#01(free0(serve),check0(y1)) | (110) |
top2#01(serve,free1(y1)) | → | top1#01(free0(serve),check1(y1)) | (111) |
new0(free0(x)) | → | free0(new0(x)) | (112) |
new1(free1(x)) | → | free1(new1(x)) | (113) |
new0(serve) | → | free0(serve) | (114) |
check0(free0(x)) | → | free1(check0(x)) | (115) |
check1(free1(x)) | → | free1(check1(x)) | (116) |
check0(new0(x)) | → | new1(check0(x)) | (117) |
check1(new1(x)) | → | new1(check1(x)) | (118) |
check1(old0(x)) | → | old1(check0(x)) | (119) |
check1(old1(x)) | → | old1(check1(x)) | (120) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
The dependency pairs are split into 3 components.
top2#10(x0,free0(y1)) | → | top1#10(new1(check1(x0)),y1) | (90) |
top1#10(free1(x),y) | → | top2#10(check1(new1(x)),y) | (63) |
top2#10(free1(x0),free0(y1)) | → | top1#10(check1(free1(new1(x0))),y1) | (94) |
top1#10(free1(y0),free0(x0)) | → | top2#10(check1(y0),free0(new0(x0))) | (78) |
top2#10(free1(x0),free0(y1)) | → | top1#10(free1(check1(x0)),new0(y1)) | (102) |
top2#10(new1(x0),free0(y1)) | → | top1#10(new1(check1(x0)),new0(y1)) | (106) |
top1#10(free1(y0),serve) | → | top2#10(check1(y0),free0(serve)) | (109) |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[check0(x1)] | = | 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 + 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[top2#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top1#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
check1(old0(x)) | → | old1(check0(x)) | (119) |
[check1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[top2#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top1#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
check1(free1(x)) | → | free1(check1(x)) | (116) |
check1(new1(x)) | → | new1(check1(x)) | (118) |
check1(old1(x)) | → | old1(check1(x)) | (120) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
new1(free1(x)) | → | free1(new1(x)) | (113) |
new0(free0(x)) | → | free0(new0(x)) | (112) |
new0(serve) | → | free0(serve) | (114) |
[check1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 + 1 · x1 |
[free0(x1)] | = | 1 + 1 · x1 |
[serve] | = | 0 |
[top2#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top1#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
top2#10(x0,free0(y1)) | → | top1#10(new1(check1(x0)),y1) | (90) |
top1#10(free1(x),y) | → | top2#10(check1(new1(x)),y) | (63) |
top2#10(free1(x0),free0(y1)) | → | top1#10(check1(free1(new1(x0))),y1) | (94) |
The dependency pairs are split into 1 component.
top2#10(free1(x0),free0(y1)) | → | top1#10(free1(check1(x0)),new0(y1)) | (102) |
top1#10(free1(y0),free0(x0)) | → | top2#10(check1(y0),free0(new0(x0))) | (78) |
top2#10(new1(x0),free0(y1)) | → | top1#10(new1(check1(x0)),new0(y1)) | (106) |
[check1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[top2#10(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
[top1#10(x1, x2)] | = | 1 · x1 + 1 · x2 |
top2#10(free1(x0),free0(y1)) | → | top1#10(free1(check1(x0)),new0(y1)) | (102) |
top2#10(new1(x0),free0(y1)) | → | top1#10(new1(check1(x0)),new0(y1)) | (106) |
[check1(x1)] | = | 1 + 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[top1#10(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
[top2#10(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
check1(free1(x)) | → | free1(check1(x)) | (116) |
check1(new1(x)) | → | new1(check1(x)) | (118) |
check1(old1(x)) | → | old1(check1(x)) | (120) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
new0(free0(x)) | → | free0(new0(x)) | (112) |
new0(serve) | → | free0(serve) | (114) |
new1(free1(x)) | → | free1(new1(x)) | (113) |
top1#10(free1(y0),free0(x0)) | → | top2#10(check1(y0),free0(new0(x0))) | (78) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
There are no pairs anymore.
top1#01(free0(y0),free1(x0)) | → | top2#01(new0(y0),free1(check1(x0))) | (69) |
top2#01(x,free1(y)) | → | top1#01(x,check1(new1(y))) | (65) |
top1#01(free0(y0),new1(x0)) | → | top2#01(new0(y0),new1(check1(x0))) | (73) |
top2#01(free0(x0),free1(y1)) | → | top1#01(free0(new0(x0)),check1(y1)) | (97) |
top1#01(free0(y0),x0) | → | top2#01(y0,new1(check1(x0))) | (81) |
top2#01(serve,free1(y1)) | → | top1#01(free0(serve),check1(y1)) | (111) |
top1#01(free0(y0),free1(x0)) | → | top2#01(y0,check1(free1(new1(x0)))) | (85) |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[new1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[check0(x1)] | = | 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 + 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[top1#01(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top2#01(x1, x2)] | = | 1 · x1 + 1 · x2 |
check1(old0(x)) | → | old1(check0(x)) | (119) |
[new1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[top1#01(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top2#01(x1, x2)] | = | 1 · x1 + 1 · x2 |
new1(free1(x)) | → | free1(new1(x)) | (113) |
check1(free1(x)) | → | free1(check1(x)) | (116) |
check1(new1(x)) | → | new1(check1(x)) | (118) |
check1(old1(x)) | → | old1(check1(x)) | (120) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
new0(free0(x)) | → | free0(new0(x)) | (112) |
new0(serve) | → | free0(serve) | (114) |
[new1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[new0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 · x1 |
[serve] | = | 0 |
[top1#01(x1, x2)] | = | 1 + 1 · x1 + 1 · x2 |
[top2#01(x1, x2)] | = | 1 · x1 + 1 · x2 |
top1#01(free0(y0),free1(x0)) | → | top2#01(new0(y0),free1(check1(x0))) | (69) |
top1#01(free0(y0),new1(x0)) | → | top2#01(new0(y0),new1(check1(x0))) | (73) |
top1#01(free0(y0),x0) | → | top2#01(y0,new1(check1(x0))) | (81) |
top1#01(free0(y0),free1(x0)) | → | top2#01(y0,check1(free1(new1(x0)))) | (85) |
The dependency pairs are split into 0 components.
top2#11(x,free1(y)) | → | top1#11(x,check1(new1(y))) | (67) |
top1#11(free1(x),y) | → | top2#11(check1(new1(x)),y) | (64) |
top2#11(x0,free1(y1)) | → | top1#11(new1(check1(x0)),y1) | (91) |
top1#11(free1(y0),free1(x0)) | → | top2#11(new1(y0),free1(check1(x0))) | (71) |
top2#11(free1(x0),free1(y1)) | → | top1#11(check1(free1(new1(x0))),y1) | (95) |
top1#11(free1(y0),new1(x0)) | → | top2#11(new1(y0),new1(check1(x0))) | (75) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(new1(x0)),check1(y1)) | (99) |
top1#11(free1(y0),free1(x0)) | → | top2#11(check1(y0),free1(new1(x0))) | (79) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(check1(x0)),new1(y1)) | (103) |
top1#11(free1(y0),x0) | → | top2#11(y0,new1(check1(x0))) | (83) |
top2#11(new1(x0),free1(y1)) | → | top1#11(new1(check1(x0)),new1(y1)) | (107) |
top1#11(free1(y0),free1(x0)) | → | top2#11(y0,check1(free1(new1(x0)))) | (87) |
[new1(x1)] | = | 1 + 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 + 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[check0(x1)] | = | 1 · x1 |
[free0(x1)] | = | 1 + 1 · x1 |
[new0(x1)] | = | 1 + 1 · x1 |
[top2#11(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top1#11(x1, x2)] | = | 1 · x1 + 1 · x2 |
new1(free1(x)) | → | free1(new1(x)) | (113) |
check1(free1(x)) | → | free1(check1(x)) | (116) |
check1(new1(x)) | → | new1(check1(x)) | (118) |
check1(old0(x)) | → | old1(check0(x)) | (119) |
check1(old1(x)) | → | old1(check1(x)) | (120) |
check1(old0(x)) | → | old0(x) | (121) |
check1(old1(x)) | → | old1(x) | (122) |
check0(free0(x)) | → | free1(check0(x)) | (115) |
check0(new0(x)) | → | new1(check0(x)) | (117) |
check1(old0(x)) | → | old1(check0(x)) | (119) |
check0(free0(x)) | → | free1(check0(x)) | (115) |
check0(new0(x)) | → | new1(check0(x)) | (117) |
[new1(x1)] | = | 1 · x1 |
[free1(x1)] | = | 1 + 1 · x1 |
[check1(x1)] | = | 1 · x1 |
[old1(x1)] | = | 1 · x1 |
[old0(x1)] | = | 1 · x1 |
[top2#11(x1, x2)] | = | 1 · x1 + 1 · x2 |
[top1#11(x1, x2)] | = | 1 · x1 + 1 · x2 |
top2#11(x,free1(y)) | → | top1#11(x,check1(new1(y))) | (67) |
top1#11(free1(x),y) | → | top2#11(check1(new1(x)),y) | (64) |
top2#11(x0,free1(y1)) | → | top1#11(new1(check1(x0)),y1) | (91) |
top1#11(free1(y0),free1(x0)) | → | top2#11(new1(y0),free1(check1(x0))) | (71) |
top2#11(free1(x0),free1(y1)) | → | top1#11(check1(free1(new1(x0))),y1) | (95) |
top1#11(free1(y0),new1(x0)) | → | top2#11(new1(y0),new1(check1(x0))) | (75) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(new1(x0)),check1(y1)) | (99) |
top1#11(free1(y0),free1(x0)) | → | top2#11(check1(y0),free1(new1(x0))) | (79) |
top2#11(free1(x0),free1(y1)) | → | top1#11(free1(check1(x0)),new1(y1)) | (103) |
top1#11(free1(y0),x0) | → | top2#11(y0,new1(check1(x0))) | (83) |
top2#11(new1(x0),free1(y1)) | → | top1#11(new1(check1(x0)),new1(y1)) | (107) |
top1#11(free1(y0),free1(x0)) | → | top2#11(y0,check1(free1(new1(x0)))) | (87) |
There are no pairs anymore.
check#(new(x)) | → | check#(x) | (40) |
check#(free(x)) | → | check#(x) | (38) |
check#(old(x)) | → | check#(x) | (41) |
[new(x1)] | = | 1 · x1 |
[free(x1)] | = | 1 · x1 |
[old(x1)] | = | 1 · x1 |
[check#(x1)] | = | 1 · x1 |
Using size-change termination in combination with the subterm criterion one obtains the following initial size-change graphs.
check#(new(x)) | → | check#(x) | (40) |
1 | > | 1 | |
check#(free(x)) | → | check#(x) | (38) |
1 | > | 1 | |
check#(old(x)) | → | check#(x) | (41) |
1 | > | 1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
new#(free(x)) | → | new#(x) | (37) |
[free(x1)] | = | 1 · x1 |
[new#(x1)] | = | 1 · x1 |
Using size-change termination in combination with the subterm criterion one obtains the following initial size-change graphs.
new#(free(x)) | → | new#(x) | (37) |
1 | > | 1 |
As there is no critical graph in the transitive closure, there are no infinite chains.