The rewrite relation of the following TRS is considered.
even(0) | → | true | (1) |
even(s(0)) | → | false | (2) |
even(s(s(x))) | → | even(x) | (3) |
half(0) | → | 0 | (4) |
half(s(s(x))) | → | s(half(x)) | (5) |
plus(0,y) | → | y | (6) |
plus(s(x),y) | → | s(plus(x,y)) | (7) |
times(0,y) | → | 0 | (8) |
times(s(x),y) | → | if_times(even(s(x)),s(x),y) | (9) |
if_times(true,s(x),y) | → | plus(times(half(s(x)),y),times(half(s(x)),y)) | (10) |
if_times(false,s(x),y) | → | plus(y,times(x,y)) | (11) |
times#(s(x),y) | → | even#(s(x)) | (12) |
if_times#(true,s(x),y) | → | plus#(times(half(s(x)),y),times(half(s(x)),y)) | (13) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
half#(s(s(x))) | → | half#(x) | (15) |
even#(s(s(x))) | → | even#(x) | (16) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
if_times#(true,s(x),y) | → | half#(s(x)) | (17) |
plus#(s(x),y) | → | plus#(x,y) | (18) |
if_times#(false,s(x),y) | → | plus#(y,times(x,y)) | (19) |
times#(s(x),y) | → | if_times#(even(s(x)),s(x),y) | (20) |
if_times#(true,s(x),y) | → | half#(s(x)) | (17) |
if_times#(false,s(x),y) | → | times#(x,y) | (21) |
The dependency pairs are split into 4 components.
if_times#(false,s(x),y) | → | times#(x,y) | (21) |
times#(s(x),y) | → | if_times#(even(s(x)),s(x),y) | (20) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
[s(x1)] | = | x1 + 8946 |
[if_times#(x1, x2, x3)] | = | x2 + 0 |
[even(x1)] | = | 1 |
[plus#(x1, x2)] | = | 0 |
[false] | = | 2 |
[half#(x1)] | = | 0 |
[true] | = | 2 |
[half(x1)] | = | x1 + 0 |
[even#(x1)] | = | 0 |
[times#(x1, x2)] | = | x1 + 0 |
[0] | = | 36459 |
[times(x1, x2)] | = | 0 |
[if_times(x1, x2, x3)] | = | 0 |
[plus(x1, x2)] | = | 0 |
half(0) | → | 0 | (4) |
half(s(s(x))) | → | s(half(x)) | (5) |
if_times#(false,s(x),y) | → | times#(x,y) | (21) |
The dependency pairs are split into 1 component.
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
times#(s(x),y) | → | if_times#(even(s(x)),s(x),y) | (20) |
π(if_times#) | = | 2 |
prec(s) | = | 1 | status(s) | = | [1] | list-extension(s) | = | Lex | ||
prec(even) | = | 2 | status(even) | = | [] | list-extension(even) | = | Lex | ||
prec(plus#) | = | 0 | status(plus#) | = | [1, 2] | list-extension(plus#) | = | Lex | ||
prec(false) | = | 0 | status(false) | = | [] | list-extension(false) | = | Lex | ||
prec(half#) | = | 0 | status(half#) | = | [] | list-extension(half#) | = | Lex | ||
prec(true) | = | 2 | status(true) | = | [] | list-extension(true) | = | Lex | ||
prec(half) | = | 1 | status(half) | = | [] | list-extension(half) | = | Lex | ||
prec(even#) | = | 0 | status(even#) | = | [] | list-extension(even#) | = | Lex | ||
prec(times#) | = | 0 | status(times#) | = | [1] | list-extension(times#) | = | Lex | ||
prec(0) | = | 1 | status(0) | = | [] | list-extension(0) | = | Lex | ||
prec(times) | = | 0 | status(times) | = | [1, 2] | list-extension(times) | = | Lex | ||
prec(if_times) | = | 0 | status(if_times) | = | [3, 2, 1] | list-extension(if_times) | = | Lex | ||
prec(plus) | = | 0 | status(plus) | = | [2, 1] | list-extension(plus) | = | Lex |
[s(x1)] | = | x1 + 1 |
[even(x1)] | = | 3 |
[plus#(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[false] | = | 0 |
[half#(x1)] | = | 1 |
[true] | = | 2 |
[half(x1)] | = | x1 + 0 |
[even#(x1)] | = | 1 |
[times#(x1, x2)] | = | max(x1 + 0, 0) |
[0] | = | 1 |
[times(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[if_times(x1, x2, x3)] | = | x1 + x2 + x3 + 1 |
[plus(x1, x2)] | = | x1 + x2 + 1 |
half(0) | → | 0 | (4) |
half(s(s(x))) | → | s(half(x)) | (5) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
if_times#(true,s(x),y) | → | times#(half(s(x)),y) | (14) |
times#(s(x),y) | → | if_times#(even(s(x)),s(x),y) | (20) |
The dependency pairs are split into 0 components.
plus#(s(x),y) | → | plus#(x,y) | (18) |
[s(x1)] | = | x1 + 1 |
[if_times#(x1, x2, x3)] | = | 0 |
[even(x1)] | = | 1 |
[plus#(x1, x2)] | = | x1 + 0 |
[false] | = | 2 |
[half#(x1)] | = | 0 |
[true] | = | 2 |
[half(x1)] | = | x1 + 61160 |
[even#(x1)] | = | 0 |
[times#(x1, x2)] | = | 1 |
[0] | = | 11966 |
[times(x1, x2)] | = | 0 |
[if_times(x1, x2, x3)] | = | 0 |
[plus(x1, x2)] | = | 0 |
plus#(s(x),y) | → | plus#(x,y) | (18) |
The dependency pairs are split into 0 components.
half#(s(s(x))) | → | half#(x) | (15) |
[s(x1)] | = | x1 + 1 |
[if_times#(x1, x2, x3)] | = | 0 |
[even(x1)] | = | 1 |
[plus#(x1, x2)] | = | 0 |
[false] | = | 2 |
[half#(x1)] | = | x1 + 0 |
[true] | = | 2 |
[half(x1)] | = | x1 + 61160 |
[even#(x1)] | = | 0 |
[times#(x1, x2)] | = | 1 |
[0] | = | 3037 |
[times(x1, x2)] | = | 0 |
[if_times(x1, x2, x3)] | = | 0 |
[plus(x1, x2)] | = | 0 |
half#(s(s(x))) | → | half#(x) | (15) |
The dependency pairs are split into 0 components.
even#(s(s(x))) | → | even#(x) | (16) |
[s(x1)] | = | x1 + 1 |
[if_times#(x1, x2, x3)] | = | 0 |
[even(x1)] | = | 1 |
[plus#(x1, x2)] | = | 0 |
[false] | = | 2 |
[half#(x1)] | = | 0 |
[true] | = | 2 |
[half(x1)] | = | x1 + 19428 |
[even#(x1)] | = | x1 + 0 |
[times#(x1, x2)] | = | 1 |
[0] | = | 1 |
[times(x1, x2)] | = | 0 |
[if_times(x1, x2, x3)] | = | 0 |
[plus(x1, x2)] | = | 0 |
even#(s(s(x))) | → | even#(x) | (16) |
The dependency pairs are split into 0 components.