The rewrite relation of the following TRS is considered.
active(__(__(X,Y),Z)) | → | mark(__(X,__(Y,Z))) | (1) |
active(__(X,nil)) | → | mark(X) | (2) |
active(__(nil,X)) | → | mark(X) | (3) |
active(U11(tt)) | → | mark(U12(tt)) | (4) |
active(U12(tt)) | → | mark(tt) | (5) |
active(isNePal(__(I,__(P,I)))) | → | mark(U11(tt)) | (6) |
mark(__(X1,X2)) | → | active(__(mark(X1),mark(X2))) | (7) |
mark(nil) | → | active(nil) | (8) |
mark(U11(X)) | → | active(U11(mark(X))) | (9) |
mark(tt) | → | active(tt) | (10) |
mark(U12(X)) | → | active(U12(mark(X))) | (11) |
mark(isNePal(X)) | → | active(isNePal(mark(X))) | (12) |
__(mark(X1),X2) | → | __(X1,X2) | (13) |
__(X1,mark(X2)) | → | __(X1,X2) | (14) |
__(active(X1),X2) | → | __(X1,X2) | (15) |
__(X1,active(X2)) | → | __(X1,X2) | (16) |
U11(mark(X)) | → | U11(X) | (17) |
U11(active(X)) | → | U11(X) | (18) |
U12(mark(X)) | → | U12(X) | (19) |
U12(active(X)) | → | U12(X) | (20) |
isNePal(mark(X)) | → | isNePal(X) | (21) |
isNePal(active(X)) | → | isNePal(X) | (22) |
active#(isNePal(__(I,__(P,I)))) | → | mark#(U11(tt)) | (23) |
active#(__(__(X,Y),Z)) | → | __#(X,__(Y,Z)) | (24) |
U11#(active(X)) | → | U11#(X) | (25) |
mark#(U11(X)) | → | U11#(mark(X)) | (26) |
mark#(isNePal(X)) | → | mark#(X) | (27) |
mark#(U12(X)) | → | U12#(mark(X)) | (28) |
mark#(isNePal(X)) | → | active#(isNePal(mark(X))) | (29) |
U12#(mark(X)) | → | U12#(X) | (30) |
U11#(mark(X)) | → | U11#(X) | (31) |
mark#(isNePal(X)) | → | isNePal#(mark(X)) | (32) |
mark#(nil) | → | active#(nil) | (33) |
__#(X1,mark(X2)) | → | __#(X1,X2) | (34) |
active#(__(__(X,Y),Z)) | → | __#(Y,Z) | (35) |
isNePal#(mark(X)) | → | isNePal#(X) | (36) |
mark#(tt) | → | active#(tt) | (37) |
mark#(U11(X)) | → | mark#(X) | (38) |
mark#(U12(X)) | → | mark#(X) | (39) |
active#(U11(tt)) | → | mark#(U12(tt)) | (40) |
mark#(U11(X)) | → | active#(U11(mark(X))) | (41) |
active#(__(__(X,Y),Z)) | → | mark#(__(X,__(Y,Z))) | (42) |
isNePal#(active(X)) | → | isNePal#(X) | (43) |
active#(U11(tt)) | → | U12#(tt) | (44) |
active#(__(nil,X)) | → | mark#(X) | (45) |
mark#(__(X1,X2)) | → | __#(mark(X1),mark(X2)) | (46) |
__#(active(X1),X2) | → | __#(X1,X2) | (47) |
mark#(__(X1,X2)) | → | mark#(X2) | (48) |
__#(X1,active(X2)) | → | __#(X1,X2) | (49) |
active#(U12(tt)) | → | mark#(tt) | (50) |
mark#(__(X1,X2)) | → | active#(__(mark(X1),mark(X2))) | (51) |
active#(isNePal(__(I,__(P,I)))) | → | U11#(tt) | (52) |
active#(__(X,nil)) | → | mark#(X) | (53) |
mark#(U12(X)) | → | active#(U12(mark(X))) | (54) |
U12#(active(X)) | → | U12#(X) | (55) |
__#(mark(X1),X2) | → | __#(X1,X2) | (56) |
mark#(__(X1,X2)) | → | mark#(X1) | (57) |
The dependency pairs are split into 5 components.
mark#(__(X1,X2)) | → | mark#(X1) | (57) |
mark#(U12(X)) | → | active#(U12(mark(X))) | (54) |
active#(__(X,nil)) | → | mark#(X) | (53) |
mark#(__(X1,X2)) | → | active#(__(mark(X1),mark(X2))) | (51) |
mark#(isNePal(X)) | → | active#(isNePal(mark(X))) | (29) |
mark#(isNePal(X)) | → | mark#(X) | (27) |
mark#(__(X1,X2)) | → | mark#(X2) | (48) |
active#(__(nil,X)) | → | mark#(X) | (45) |
active#(__(__(X,Y),Z)) | → | mark#(__(X,__(Y,Z))) | (42) |
mark#(U11(X)) | → | active#(U11(mark(X))) | (41) |
active#(U11(tt)) | → | mark#(U12(tt)) | (40) |
mark#(U12(X)) | → | mark#(X) | (39) |
mark#(U11(X)) | → | mark#(X) | (38) |
active#(isNePal(__(I,__(P,I)))) | → | mark#(U11(tt)) | (23) |
[U11(x1)] | = | x1 + 26634 |
[__#(x1, x2)] | = | 0 |
[isNePal(x1)] | = | x1 + 28740 |
[U12(x1)] | = | x1 + 26633 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | x1 + 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 50866 |
[mark(x1)] | = | x1 + 0 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | x1 + 0 |
[active#(x1)] | = | x1 + 0 |
[tt] | = | 3287 |
[__(x1, x2)] | = | x1 + x2 + 591 |
U11(active(X)) | → | U11(X) | (18) |
active(U11(tt)) | → | mark(U12(tt)) | (4) |
__(active(X1),X2) | → | __(X1,X2) | (15) |
mark(nil) | → | active(nil) | (8) |
active(__(__(X,Y),Z)) | → | mark(__(X,__(Y,Z))) | (1) |
active(__(nil,X)) | → | mark(X) | (3) |
__(X1,active(X2)) | → | __(X1,X2) | (16) |
isNePal(mark(X)) | → | isNePal(X) | (21) |
U12(mark(X)) | → | U12(X) | (19) |
U11(mark(X)) | → | U11(X) | (17) |
isNePal(active(X)) | → | isNePal(X) | (22) |
active(U12(tt)) | → | mark(tt) | (5) |
mark(tt) | → | active(tt) | (10) |
mark(__(X1,X2)) | → | active(__(mark(X1),mark(X2))) | (7) |
U12(active(X)) | → | U12(X) | (20) |
__(X1,mark(X2)) | → | __(X1,X2) | (14) |
mark(isNePal(X)) | → | active(isNePal(mark(X))) | (12) |
mark(U12(X)) | → | active(U12(mark(X))) | (11) |
mark(U11(X)) | → | active(U11(mark(X))) | (9) |
__(mark(X1),X2) | → | __(X1,X2) | (13) |
active(isNePal(__(I,__(P,I)))) | → | mark(U11(tt)) | (6) |
active(__(X,nil)) | → | mark(X) | (2) |
mark#(__(X1,X2)) | → | mark#(X1) | (57) |
active#(__(X,nil)) | → | mark#(X) | (53) |
mark#(isNePal(X)) | → | mark#(X) | (27) |
mark#(__(X1,X2)) | → | mark#(X2) | (48) |
active#(__(nil,X)) | → | mark#(X) | (45) |
active#(U11(tt)) | → | mark#(U12(tt)) | (40) |
mark#(U12(X)) | → | mark#(X) | (39) |
mark#(U11(X)) | → | mark#(X) | (38) |
active#(isNePal(__(I,__(P,I)))) | → | mark#(U11(tt)) | (23) |
The dependency pairs are split into 1 component.
active#(__(__(X,Y),Z)) | → | mark#(__(X,__(Y,Z))) | (42) |
mark#(__(X1,X2)) | → | active#(__(mark(X1),mark(X2))) | (51) |
mark#(isNePal(X)) | → | active#(isNePal(mark(X))) | (29) |
mark#(U12(X)) | → | active#(U12(mark(X))) | (54) |
mark#(U11(X)) | → | active#(U11(mark(X))) | (41) |
[U11(x1)] | = | 4709 |
[__#(x1, x2)] | = | 0 |
[isNePal(x1)] | = | 1 |
[U12(x1)] | = | 7630 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | 24697 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 51457 |
[mark(x1)] | = | 1 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | 1 |
[active#(x1)] | = | x1 + 0 |
[tt] | = | 1 |
[__(x1, x2)] | = | 24697 |
U11(active(X)) | → | U11(X) | (18) |
active(U11(tt)) | → | mark(U12(tt)) | (4) |
__(active(X1),X2) | → | __(X1,X2) | (15) |
mark(nil) | → | active(nil) | (8) |
active(__(__(X,Y),Z)) | → | mark(__(X,__(Y,Z))) | (1) |
active(__(nil,X)) | → | mark(X) | (3) |
__(X1,active(X2)) | → | __(X1,X2) | (16) |
isNePal(mark(X)) | → | isNePal(X) | (21) |
U12(mark(X)) | → | U12(X) | (19) |
U11(mark(X)) | → | U11(X) | (17) |
isNePal(active(X)) | → | isNePal(X) | (22) |
active(U12(tt)) | → | mark(tt) | (5) |
mark(tt) | → | active(tt) | (10) |
mark(__(X1,X2)) | → | active(__(mark(X1),mark(X2))) | (7) |
U12(active(X)) | → | U12(X) | (20) |
__(X1,mark(X2)) | → | __(X1,X2) | (14) |
mark(isNePal(X)) | → | active(isNePal(mark(X))) | (12) |
mark(U12(X)) | → | active(U12(mark(X))) | (11) |
mark(U11(X)) | → | active(U11(mark(X))) | (9) |
__(mark(X1),X2) | → | __(X1,X2) | (13) |
active(isNePal(__(I,__(P,I)))) | → | mark(U11(tt)) | (6) |
active(__(X,nil)) | → | mark(X) | (2) |
mark#(isNePal(X)) | → | active#(isNePal(mark(X))) | (29) |
mark#(U12(X)) | → | active#(U12(mark(X))) | (54) |
mark#(U11(X)) | → | active#(U11(mark(X))) | (41) |
The dependency pairs are split into 1 component.
active#(__(__(X,Y),Z)) | → | mark#(__(X,__(Y,Z))) | (42) |
mark#(__(X1,X2)) | → | active#(__(mark(X1),mark(X2))) | (51) |
π(__#) | = | 1 |
π(U12) | = | 1 |
π(mark) | = | 1 |
π(active) | = | 1 |
prec(U11) | = | 2 | status(U11) | = | [] | list-extension(U11) | = | Lex | ||
prec(isNePal) | = | 2 | status(isNePal) | = | [] | list-extension(isNePal) | = | Lex | ||
prec(U12#) | = | 0 | status(U12#) | = | [] | list-extension(U12#) | = | Lex | ||
prec(mark#) | = | 1 | status(mark#) | = | [1] | list-extension(mark#) | = | Lex | ||
prec(isNePal#) | = | 0 | status(isNePal#) | = | [] | list-extension(isNePal#) | = | Lex | ||
prec(nil) | = | 3 | status(nil) | = | [] | list-extension(nil) | = | Lex | ||
prec(U11#) | = | 0 | status(U11#) | = | [] | list-extension(U11#) | = | Lex | ||
prec(active#) | = | 1 | status(active#) | = | [1] | list-extension(active#) | = | Lex | ||
prec(tt) | = | 1 | status(tt) | = | [] | list-extension(tt) | = | Lex | ||
prec(__) | = | 2 | status(__) | = | [1, 2] | list-extension(__) | = | Lex |
[U11(x1)] | = | 0 |
[isNePal(x1)] | = | 0 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | x1 + 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 0 |
[U11#(x1)] | = | 0 |
[active#(x1)] | = | x1 + 0 |
[tt] | = | 0 |
[__(x1, x2)] | = | max(x1 + 0, x2 + 0, 0) |
U11(active(X)) | → | U11(X) | (18) |
active(U11(tt)) | → | mark(U12(tt)) | (4) |
__(active(X1),X2) | → | __(X1,X2) | (15) |
mark(nil) | → | active(nil) | (8) |
active(__(__(X,Y),Z)) | → | mark(__(X,__(Y,Z))) | (1) |
active(__(nil,X)) | → | mark(X) | (3) |
__(X1,active(X2)) | → | __(X1,X2) | (16) |
isNePal(mark(X)) | → | isNePal(X) | (21) |
U12(mark(X)) | → | U12(X) | (19) |
U11(mark(X)) | → | U11(X) | (17) |
isNePal(active(X)) | → | isNePal(X) | (22) |
active(U12(tt)) | → | mark(tt) | (5) |
mark(tt) | → | active(tt) | (10) |
mark(__(X1,X2)) | → | active(__(mark(X1),mark(X2))) | (7) |
U12(active(X)) | → | U12(X) | (20) |
__(X1,mark(X2)) | → | __(X1,X2) | (14) |
mark(isNePal(X)) | → | active(isNePal(mark(X))) | (12) |
mark(U12(X)) | → | active(U12(mark(X))) | (11) |
mark(U11(X)) | → | active(U11(mark(X))) | (9) |
__(mark(X1),X2) | → | __(X1,X2) | (13) |
active(isNePal(__(I,__(P,I)))) | → | mark(U11(tt)) | (6) |
active(__(X,nil)) | → | mark(X) | (2) |
active#(__(__(X,Y),Z)) | → | mark#(__(X,__(Y,Z))) | (42) |
The dependency pairs are split into 0 components.
U11#(mark(X)) | → | U11#(X) | (31) |
U11#(active(X)) | → | U11#(X) | (25) |
[U11(x1)] | = | x1 + 15261 |
[__#(x1, x2)] | = | 0 |
[isNePal(x1)] | = | 21387 |
[U12(x1)] | = | x1 + 15263 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 0 |
[mark(x1)] | = | x1 + 1 |
[U11#(x1)] | = | x1 + 0 |
[active(x1)] | = | x1 + 2 |
[active#(x1)] | = | 1 |
[tt] | = | 6128 |
[__(x1, x2)] | = | 1 |
U11#(mark(X)) | → | U11#(X) | (31) |
U11#(active(X)) | → | U11#(X) | (25) |
The dependency pairs are split into 0 components.
U12#(active(X)) | → | U12#(X) | (55) |
U12#(mark(X)) | → | U12#(X) | (30) |
[U11(x1)] | = | x1 + 3154 |
[__#(x1, x2)] | = | 0 |
[isNePal(x1)] | = | 3153 |
[U12(x1)] | = | x1 + 3156 |
[U12#(x1)] | = | x1 + 0 |
[mark#(x1)] | = | 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 0 |
[mark(x1)] | = | x1 + 1 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | x1 + 2 |
[active#(x1)] | = | 1 |
[tt] | = | 1 |
[__(x1, x2)] | = | 45545 |
U12#(active(X)) | → | U12#(X) | (55) |
U12#(mark(X)) | → | U12#(X) | (30) |
The dependency pairs are split into 0 components.
isNePal#(mark(X)) | → | isNePal#(X) | (36) |
isNePal#(active(X)) | → | isNePal#(X) | (43) |
[U11(x1)] | = | x1 + 4187 |
[__#(x1, x2)] | = | 0 |
[isNePal(x1)] | = | 23744 |
[U12(x1)] | = | x1 + 4189 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | 0 |
[isNePal#(x1)] | = | x1 + 0 |
[nil] | = | 0 |
[mark(x1)] | = | x1 + 1 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | x1 + 2 |
[active#(x1)] | = | 1 |
[tt] | = | 19559 |
[__(x1, x2)] | = | 45545 |
isNePal#(mark(X)) | → | isNePal#(X) | (36) |
isNePal#(active(X)) | → | isNePal#(X) | (43) |
The dependency pairs are split into 0 components.
__#(mark(X1),X2) | → | __#(X1,X2) | (56) |
__#(X1,mark(X2)) | → | __#(X1,X2) | (34) |
__#(X1,active(X2)) | → | __#(X1,X2) | (49) |
__#(active(X1),X2) | → | __#(X1,X2) | (47) |
[U11(x1)] | = | x1 + 10197 |
[__#(x1, x2)] | = | x1 + 0 |
[isNePal(x1)] | = | 31729 |
[U12(x1)] | = | x1 + 10199 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 0 |
[mark(x1)] | = | x1 + 1 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | x1 + 2 |
[active#(x1)] | = | 1 |
[tt] | = | 21534 |
[__(x1, x2)] | = | 1 |
__#(mark(X1),X2) | → | __#(X1,X2) | (56) |
__#(active(X1),X2) | → | __#(X1,X2) | (47) |
The dependency pairs are split into 1 component.
__#(X1,active(X2)) | → | __#(X1,X2) | (49) |
__#(X1,mark(X2)) | → | __#(X1,X2) | (34) |
[U11(x1)] | = | x1 + 40401 |
[__#(x1, x2)] | = | x2 + 0 |
[isNePal(x1)] | = | 40400 |
[U12(x1)] | = | x1 + 40403 |
[U12#(x1)] | = | 0 |
[mark#(x1)] | = | 0 |
[isNePal#(x1)] | = | 0 |
[nil] | = | 0 |
[mark(x1)] | = | x1 + 1 |
[U11#(x1)] | = | 0 |
[active(x1)] | = | x1 + 2 |
[active#(x1)] | = | 1 |
[tt] | = | 1 |
[__(x1, x2)] | = | 7690 |
__#(X1,active(X2)) | → | __#(X1,X2) | (49) |
__#(X1,mark(X2)) | → | __#(X1,X2) | (34) |
The dependency pairs are split into 0 components.