The rewrite relation of the following TRS is considered.
| half(0) | → | 0 | (1) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(x))) | → | s(half(x)) | (3) |
| lastbit(0) | → | 0 | (4) |
| lastbit(s(0)) | → | s(0) | (5) |
| lastbit(s(s(x))) | → | lastbit(x) | (6) |
| conv(0) | → | cons(nil,0) | (7) |
| conv(s(x)) | → | cons(conv(half(s(x))),lastbit(s(x))) | (8) |
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
||||||||
|
originates from |
|
| half#(0) |
| half#(s(0)) |
| half#(s(s(z0))) |
| lastbit#(0) |
| lastbit#(s(0)) |
| lastbit#(s(s(z0))) |
| conv#(0) |
| conv#(s(z0)) |
| lastbit(0) | → | 0 | (4) |
| lastbit(s(0)) | → | s(0) | (5) |
| lastbit(s(s(z0))) | → | lastbit(z0) | (15) |
| conv(0) | → | cons(nil,0) | (7) |
| conv(s(z0)) | → | cons(conv(half(s(z0))),lastbit(s(z0))) | (18) |
| conv#(0) | → | c6 | (17) |
| [c] | = | 0 |
| [c1] | = | 0 |
| [c2(x1)] | = | 1 · x1 + 0 |
| [c3] | = | 0 |
| [c4] | = | 0 |
| [c5(x1)] | = | 1 · x1 + 0 |
| [c6] | = | 0 |
| [c7(x1, x2, x3)] | = | 1 · x1 + 0 + 1 · x2 + 1 · x3 |
| [half(x1)] | = | 1 + 1 · x1 |
| [half#(x1)] | = | 0 |
| [lastbit#(x1)] | = | 0 |
| [conv#(x1)] | = | 1 |
| [s(x1)] | = | 1 · x1 + 0 |
| [0] | = | 1 |
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| half#(s(0)) | → | c1 | (10) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| lastbit#(0) | → | c3 | (13) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| half#(0) | → | c | (9) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| lastbit#(s(0)) | → | c4 | (14) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| [lastbit#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c1] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [conv#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c5(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c6] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c3] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c4] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c2(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [half#(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [c7(x1, x2, x3)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [s(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [half(x1)] | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| [0] | = |
|
| half#(0) | → | c | (9) |
| half#(s(0)) | → | c1 | (10) |
| half#(s(s(z0))) | → | c2(half#(z0)) | (12) |
| lastbit#(0) | → | c3 | (13) |
| lastbit#(s(0)) | → | c4 | (14) |
| lastbit#(s(s(z0))) | → | c5(lastbit#(z0)) | (16) |
| conv#(0) | → | c6 | (17) |
| conv#(s(z0)) | → | c7(conv#(half(s(z0))),half#(s(z0)),lastbit#(s(z0))) | (19) |
| half(s(0)) | → | 0 | (2) |
| half(s(s(z0))) | → | s(half(z0)) | (11) |
| half(0) | → | 0 | (1) |
There are no rules in the TRS R. Hence, R/S has complexity O(1).