TIMEOUT
The TRS could not be proven terminating. The proof attempt took 60000 ms.
Problem 1 was processed with processor DependencyGraph (914ms). | Problem 2 was processed with processor SubtermCriterion (4ms). | Problem 3 was processed with processor SubtermCriterion (1ms). | Problem 4 was processed with processor SubtermCriterion (1ms). | Problem 5 was processed with processor ForwardNarrowing (8ms). | | Problem 10 was processed with processor ForwardNarrowing (13ms). | | | Problem 11 was processed with processor ForwardNarrowing (20ms). | | | | Problem 12 was processed with processor ForwardNarrowing (17ms). | | | | | Problem 13 was processed with processor ForwardNarrowing (46ms). | | | | | | Problem 14 was processed with processor ForwardNarrowing (9ms). | | | | | | | Problem 15 was processed with processor ForwardNarrowing (16ms). | | | | | | | | Problem 16 was processed with processor ForwardNarrowing (11ms). | | | | | | | | | Problem 17 was processed with processor ForwardNarrowing (13ms). | | | | | | | | | | Problem 18 was processed with processor ForwardNarrowing (23ms). | | | | | | | | | | | Problem 19 was processed with processor ForwardNarrowing (20ms). | | | | | | | | | | | | Problem 20 was processed with processor ForwardNarrowing (19ms). | | | | | | | | | | | | | Problem 21 was processed with processor ForwardNarrowing (23ms). | | | | | | | | | | | | | | Problem 22 was processed with processor ForwardNarrowing (23ms). | | | | | | | | | | | | | | | Problem 23 was processed with processor ForwardNarrowing (25ms). | | | | | | | | | | | | | | | | Problem 24 was processed with processor ForwardNarrowing (26ms). | | | | | | | | | | | | | | | | | Problem 25 was processed with processor ForwardNarrowing (21ms). | | | | | | | | | | | | | | | | | | Problem 26 was processed with processor ForwardNarrowing (25ms). | | | | | | | | | | | | | | | | | | | Problem 27 was processed with processor ForwardNarrowing (22ms). | | | | | | | | | | | | | | | | | | | | Problem 28 was processed with processor ForwardNarrowing (80ms). | | | | | | | | | | | | | | | | | | | | | Problem 29 was processed with processor ForwardNarrowing (134ms). | | | | | | | | | | | | | | | | | | | | | | Problem 30 remains open; application of the following processors failed [ForwardNarrowing (131ms), ForwardNarrowing (46ms), ForwardNarrowing (141ms), ForwardNarrowing (150ms), ForwardNarrowing (146ms), ForwardNarrowing (92ms), ForwardNarrowing (85ms), ForwardNarrowing (185ms), ForwardNarrowing (120ms), ForwardNarrowing (85ms), ForwardNarrowing (168ms), ForwardNarrowing (101ms), ForwardNarrowing (101ms), ForwardNarrowing (200ms), ForwardNarrowing (175ms), ForwardNarrowing (208ms), ForwardNarrowing (220ms), ForwardNarrowing (337ms), ForwardNarrowing (138ms), ForwardNarrowing (242ms), ForwardNarrowing (141ms), ForwardNarrowing (330ms), ForwardNarrowing (287ms), ForwardNarrowing (320ms), ForwardNarrowing (395ms), ForwardNarrowing (400ms), ForwardNarrowing (455ms), ForwardNarrowing (295ms), ForwardNarrowing (526ms), ForwardNarrowing (189ms), ForwardNarrowing (247ms), ForwardNarrowing (270ms), ForwardNarrowing (380ms), ForwardNarrowing (268ms), ForwardNarrowing (345ms), ForwardNarrowing (440ms), ForwardNarrowing (299ms), ForwardNarrowing (323ms), ForwardNarrowing (461ms)]. | Problem 6 was processed with processor SubtermCriterion (3ms). | Problem 7 was processed with processor SubtermCriterion (1ms). | Problem 8 was processed with processor SubtermCriterion (1ms). | Problem 9 was processed with processor SubtermCriterion (1ms).
top#(mark(X)) | → | top#(proper(X)) | top#(ok(X)) | → | top#(active(X)) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
proper#(cons(X1, X2)) | → | proper#(X1) | proper#(length(X)) | → | length#(proper(X)) | |
proper#(U11(X1, X2)) | → | proper#(X1) | top#(ok(X)) | → | top#(active(X)) | |
cons#(mark(X1), X2) | → | cons#(X1, X2) | U12#(ok(X1), ok(X2)) | → | U12#(X1, X2) | |
U11#(ok(X1), ok(X2)) | → | U11#(X1, X2) | proper#(U12(X1, X2)) | → | proper#(X2) | |
cons#(ok(X1), ok(X2)) | → | cons#(X1, X2) | proper#(U11(X1, X2)) | → | U11#(proper(X1), proper(X2)) | |
U11#(mark(X1), X2) | → | U11#(X1, X2) | top#(ok(X)) | → | active#(X) | |
active#(cons(X1, X2)) | → | cons#(active(X1), X2) | proper#(U11(X1, X2)) | → | proper#(X2) | |
active#(U11(tt, L)) | → | U12#(tt, L) | length#(ok(X)) | → | length#(X) | |
U12#(mark(X1), X2) | → | U12#(X1, X2) | top#(mark(X)) | → | proper#(X) | |
active#(U11(X1, X2)) | → | active#(X1) | length#(mark(X)) | → | length#(X) | |
proper#(U12(X1, X2)) | → | proper#(X1) | top#(mark(X)) | → | top#(proper(X)) | |
active#(length(X)) | → | length#(active(X)) | proper#(cons(X1, X2)) | → | proper#(X2) | |
active#(U12(X1, X2)) | → | active#(X1) | active#(U12(tt, L)) | → | length#(L) | |
active#(length(cons(N, L))) | → | U11#(tt, L) | active#(length(X)) | → | active#(X) | |
active#(U11(X1, X2)) | → | U11#(active(X1), X2) | active#(s(X)) | → | s#(active(X)) | |
s#(ok(X)) | → | s#(X) | s#(mark(X)) | → | s#(X) | |
active#(U12(tt, L)) | → | s#(length(L)) | active#(U12(X1, X2)) | → | U12#(active(X1), X2) | |
proper#(s(X)) | → | proper#(X) | proper#(length(X)) | → | proper#(X) | |
proper#(cons(X1, X2)) | → | cons#(proper(X1), proper(X2)) | active#(s(X)) | → | active#(X) | |
proper#(s(X)) | → | s#(proper(X)) | active#(zeros) | → | cons#(0, zeros) | |
proper#(U12(X1, X2)) | → | U12#(proper(X1), proper(X2)) | active#(cons(X1, X2)) | → | active#(X1) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
cons#(mark(X1), X2) → cons#(X1, X2) | cons#(ok(X1), ok(X2)) → cons#(X1, X2) |
length#(mark(X)) → length#(X) | length#(ok(X)) → length#(X) |
proper#(s(X)) → proper#(X) | proper#(length(X)) → proper#(X) |
proper#(U12(X1, X2)) → proper#(X1) | proper#(cons(X1, X2)) → proper#(X1) |
proper#(U11(X1, X2)) → proper#(X2) | proper#(U11(X1, X2)) → proper#(X1) |
proper#(cons(X1, X2)) → proper#(X2) | proper#(U12(X1, X2)) → proper#(X2) |
active#(U12(X1, X2)) → active#(X1) | active#(s(X)) → active#(X) |
active#(length(X)) → active#(X) | active#(U11(X1, X2)) → active#(X1) |
active#(cons(X1, X2)) → active#(X1) |
U12#(ok(X1), ok(X2)) → U12#(X1, X2) | U12#(mark(X1), X2) → U12#(X1, X2) |
U11#(ok(X1), ok(X2)) → U11#(X1, X2) | U11#(mark(X1), X2) → U11#(X1, X2) |
top#(mark(X)) → top#(proper(X)) | top#(ok(X)) → top#(active(X)) |
s#(mark(X)) → s#(X) | s#(ok(X)) → s#(X) |
U12#(ok(X1), ok(X2)) | → | U12#(X1, X2) | U12#(mark(X1), X2) | → | U12#(X1, X2) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
U12#(ok(X1), ok(X2)) | → | U12#(X1, X2) | U12#(mark(X1), X2) | → | U12#(X1, X2) |
U11#(ok(X1), ok(X2)) | → | U11#(X1, X2) | U11#(mark(X1), X2) | → | U11#(X1, X2) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
U11#(ok(X1), ok(X2)) | → | U11#(X1, X2) | U11#(mark(X1), X2) | → | U11#(X1, X2) |
proper#(s(X)) | → | proper#(X) | proper#(length(X)) | → | proper#(X) | |
proper#(U12(X1, X2)) | → | proper#(X1) | proper#(cons(X1, X2)) | → | proper#(X1) | |
proper#(U11(X1, X2)) | → | proper#(X2) | proper#(U11(X1, X2)) | → | proper#(X1) | |
proper#(cons(X1, X2)) | → | proper#(X2) | proper#(U12(X1, X2)) | → | proper#(X2) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
proper#(length(X)) | → | proper#(X) | proper#(s(X)) | → | proper#(X) | |
proper#(cons(X1, X2)) | → | proper#(X1) | proper#(U12(X1, X2)) | → | proper#(X1) | |
proper#(U11(X1, X2)) | → | proper#(X2) | proper#(U11(X1, X2)) | → | proper#(X1) | |
proper#(cons(X1, X2)) | → | proper#(X2) | proper#(U12(X1, X2)) | → | proper#(X2) |
top#(mark(X)) | → | top#(proper(X)) | top#(ok(X)) | → | top#(active(X)) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(ok(0)) | |
top#(U11(proper(_x21), proper(_x22))) | |
top#(cons(proper(_x21), proper(_x22))) | |
top#(ok(zeros)) | |
top#(U12(proper(_x21), proper(_x22))) | |
top#(s(proper(_x21))) | |
top#(ok(tt)) | |
top#(length(proper(_x21))) | |
top#(ok(nil)) |
top#(mark(zeros)) → top#(ok(zeros)) | top#(mark(U11(_x21, _x22))) → top#(U11(proper(_x21), proper(_x22))) |
top#(mark(0)) → top#(ok(0)) | top#(mark(U12(_x21, _x22))) → top#(U12(proper(_x21), proper(_x22))) |
top#(mark(nil)) → top#(ok(nil)) | top#(mark(cons(_x21, _x22))) → top#(cons(proper(_x21), proper(_x22))) |
top#(mark(s(_x21))) → top#(s(proper(_x21))) | top#(mark(tt)) → top#(ok(tt)) |
top#(mark(length(_x21))) → top#(length(proper(_x21))) |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(_x21, _x22))) | → | top#(U11(proper(_x21), proper(_x22))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(ok(X)) | → | top#(active(X)) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(ok(nil), proper(_x22))) | |
top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(U11(ok(zeros), proper(_x22))) | |
top#(U11(proper(_x21), ok(tt))) | |
top#(U11(cons(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(U11(ok(tt), proper(_x22))) | |
top#(U11(proper(_x21), ok(zeros))) | |
top#(U11(length(proper(_x41)), proper(_x22))) | |
top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | |
top#(U11(proper(_x21), ok(nil))) | |
top#(U11(proper(_x21), ok(0))) | |
top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(U11(ok(0), proper(_x22))) | |
top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(U11(s(proper(_x41)), proper(_x22))) |
top#(mark(U11(_x21, nil))) → top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, _x42), _x22))) → top#(U11(cons(proper(_x41), proper(_x42)), proper(_x22))) |
top#(mark(U11(length(_x41), _x22))) → top#(U11(length(proper(_x41)), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) → top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) |
top#(mark(U11(_x21, 0))) → top#(U11(proper(_x21), ok(0))) | top#(mark(U11(_x21, tt))) → top#(U11(proper(_x21), ok(tt))) |
top#(mark(U11(U11(_x41, _x42), _x22))) → top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(_x41), _x22))) → top#(U11(s(proper(_x41)), proper(_x22))) |
top#(mark(U11(_x21, U12(_x51, _x52)))) → top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(tt, _x22))) → top#(U11(ok(tt), proper(_x22))) |
top#(mark(U11(_x21, zeros))) → top#(U11(proper(_x21), ok(zeros))) | top#(mark(U11(zeros, _x22))) → top#(U11(ok(zeros), proper(_x22))) |
top#(mark(U11(_x21, length(_x51)))) → top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(_x21, s(_x51)))) → top#(U11(proper(_x21), s(proper(_x51)))) |
top#(mark(U11(_x21, cons(_x51, _x52)))) → top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U11(_x51, _x52)))) → top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) |
top#(mark(U11(0, _x22))) → top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) → top#(U11(ok(nil), proper(_x22))) |
top#(mark(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(mark(U11(length(_x41), _x22))) | → | top#(U11(length(proper(_x41)), proper(_x22))) | top#(ok(X)) | → | top#(active(X)) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | |
top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(U11(cons(proper(_x41), ok(nil)), proper(_x22))) | |
top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) |
top#(mark(U11(cons(_x41, nil), _x22))) → top#(U11(cons(proper(_x41), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) → top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(length(_x61), _x42), _x22))) → top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, tt), _x22))) → top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) |
top#(mark(U11(cons(_x41, zeros), _x22))) → top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) → top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) |
top#(mark(U11(cons(zeros, _x42), _x22))) → top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) → top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) → top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), zeros))) → top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) |
top#(mark(U11(cons(nil, _x42), _x22))) → top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) → top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) → top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) → top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) → top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) → top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) |
top#(mark(U11(cons(tt, _x42), _x22))) → top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), tt))) → top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) |
top#(mark(U11(cons(0, _x42), _x22))) → top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) → top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) |
top#(mark(U11(cons(_x41, _x42), 0))) → top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) → top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) |
top#(mark(U11(cons(_x41, 0), _x22))) → top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) → top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) → top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) → top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) → top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(_x41, nil), _x22))) | → | top#(U11(cons(proper(_x41), ok(nil)), proper(_x22))) | top#(mark(U11(length(_x41), _x22))) | → | top#(U11(length(proper(_x41)), proper(_x22))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(X)) | → | top#(active(X)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | |
top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(_x41, nil), nil))) → top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) → top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) → top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), 0))) → top#(U11(cons(proper(_x41), ok(nil)), ok(0))) |
top#(mark(U11(cons(length(_x61), nil), _x22))) → top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(tt, nil), _x22))) → top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(_x41, nil), s(_x51)))) → top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(zeros, nil), _x22))) → top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(nil, nil), _x22))) → top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) → top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(_x41, nil), length(_x51)))) → top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(cons(0, nil), _x22))) → top#(U11(cons(ok(0), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(_x41, nil), tt))) → top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) → top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) → top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) → top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(_x41, nil), zeros))) → top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(cons(s(_x61), nil), _x22))) → top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) |
top#(mark(U11(length(_x41), _x22))) | → | top#(U11(length(proper(_x41)), proper(_x22))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(ok(X)) | → | top#(active(X)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(U11(length(ok(nil)), proper(_x22))) | |
top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(U11(length(proper(_x41)), ok(0))) | |
top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(U11(length(proper(_x41)), ok(tt))) | |
top#(U11(length(proper(_x41)), ok(nil))) | |
top#(U11(length(ok(tt)), proper(_x22))) | |
top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(U11(length(ok(0)), proper(_x22))) | |
top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(length(0), _x22))) → top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), zeros))) → top#(U11(length(proper(_x41)), ok(zeros))) |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) → top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), tt))) → top#(U11(length(proper(_x41)), ok(tt))) |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) → top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), 0))) → top#(U11(length(proper(_x41)), ok(0))) |
top#(mark(U11(length(_x41), s(_x51)))) → top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) → top#(U11(length(length(proper(_x61))), proper(_x22))) |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) → top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(nil), _x22))) → top#(U11(length(ok(nil)), proper(_x22))) |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) → top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) → top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) → top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) → top#(U11(length(proper(_x41)), length(proper(_x51)))) |
top#(mark(U11(length(_x41), nil))) → top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(length(zeros), _x22))) → top#(U11(length(ok(zeros)), proper(_x22))) |
top#(mark(U11(length(tt), _x22))) → top#(U11(length(ok(tt)), proper(_x22))) | top#(mark(U11(length(s(_x61)), _x22))) → top#(U11(length(s(proper(_x61))), proper(_x22))) |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(X)) | → | top#(active(X)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | |
top#(mark(U11(length(_x41), 0))) | → | top#(U11(length(proper(_x41)), ok(0))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(mark(0)) | |
top#(mark(U12(tt, _x21))) | |
top#(s(active(_x21))) | |
top#(length(active(_x21))) | |
top#(mark(cons(0, zeros))) | |
top#(mark(U11(tt, _x21))) | |
top#(cons(active(_x21), _x22)) | |
top#(U12(active(_x21), _x22)) | |
top#(mark(s(length(_x21)))) | |
top#(U11(active(_x21), _x22)) |
top#(ok(U11(tt, _x21))) → top#(mark(U12(tt, _x21))) | top#(ok(U12(tt, _x21))) → top#(mark(s(length(_x21)))) |
top#(ok(length(nil))) → top#(mark(0)) | top#(ok(U11(_x21, _x22))) → top#(U11(active(_x21), _x22)) |
top#(ok(length(cons(_x22, _x21)))) → top#(mark(U11(tt, _x21))) | top#(ok(U12(_x21, _x22))) → top#(U12(active(_x21), _x22)) |
top#(ok(s(_x21))) → top#(s(active(_x21))) | top#(ok(length(_x21))) → top#(length(active(_x21))) |
top#(ok(zeros)) → top#(mark(cons(0, zeros))) | top#(ok(cons(_x21, _x22))) → top#(cons(active(_x21), _x22)) |
top#(ok(U11(_x21, _x22))) | → | top#(U11(active(_x21), _x22)) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(length(_x41), 0))) | → | top#(U11(length(proper(_x41)), ok(0))) | |
top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(U11(length(active(_x41)), _x22)) | |
top#(U11(mark(s(length(_x41))), _x22)) | |
top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(U11(s(active(_x41)), _x22)) | |
top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(U11(mark(0), _x22)) | |
top#(U11(mark(cons(0, zeros)), _x22)) |
top#(ok(U11(length(_x41), _x22))) → top#(U11(length(active(_x41)), _x22)) | top#(ok(U11(s(_x41), _x22))) → top#(U11(s(active(_x41)), _x22)) |
top#(ok(U11(U12(_x41, _x42), _x22))) → top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U11(U11(tt, _x41), _x22))) → top#(U11(mark(U12(tt, _x41)), _x22)) |
top#(ok(U11(U12(tt, _x41), _x22))) → top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(U11(_x41, _x42), _x22))) → top#(U11(U11(active(_x41), _x42), _x22)) |
top#(ok(U11(cons(_x41, _x42), _x22))) → top#(U11(cons(active(_x41), _x42), _x22)) | top#(ok(U11(zeros, _x22))) → top#(U11(mark(cons(0, zeros)), _x22)) |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) → top#(U11(mark(U11(tt, _x41)), _x22)) | top#(ok(U11(length(nil), _x22))) → top#(U11(mark(0), _x22)) |
top#(mark(U11(_x21, tt))) | → | top#(U11(proper(_x21), ok(tt))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(length(_x41), 0))) | → | top#(U11(length(proper(_x41)), ok(0))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(U11(ok(0), ok(tt))) | |
top#(U11(length(proper(_x41)), ok(tt))) | |
top#(U11(ok(nil), ok(tt))) | |
top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(U11(s(proper(_x41)), ok(tt))) | |
top#(U11(ok(zeros), ok(tt))) | |
top#(U11(ok(tt), ok(tt))) |
top#(mark(U11(0, tt))) → top#(U11(ok(0), ok(tt))) | top#(mark(U11(zeros, tt))) → top#(U11(ok(zeros), ok(tt))) |
top#(mark(U11(cons(_x41, _x42), tt))) → top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), tt))) → top#(U11(s(proper(_x41)), ok(tt))) |
top#(mark(U11(U12(_x41, _x42), tt))) → top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(tt, tt))) → top#(U11(ok(tt), ok(tt))) |
top#(mark(U11(U11(_x41, _x42), tt))) → top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(_x41), tt))) → top#(U11(length(proper(_x41)), ok(tt))) |
top#(mark(U11(nil, tt))) → top#(U11(ok(nil), ok(tt))) |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | top#(mark(U11(length(_x41), 0))) | → | top#(U11(length(proper(_x41)), ok(0))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | |
top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(U11(length(ok(zeros)), ok(0))) | |
top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(U11(length(ok(nil)), ok(0))) | |
top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(U11(length(ok(0)), ok(0))) | |
top#(U11(length(ok(tt)), ok(0))) |
top#(mark(U11(length(length(_x51)), 0))) → top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(length(tt), 0))) → top#(U11(length(ok(tt)), ok(0))) |
top#(mark(U11(length(U11(_x51, _x52)), 0))) → top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) → top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) |
top#(mark(U11(length(s(_x51)), 0))) → top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(length(zeros), 0))) → top#(U11(length(ok(zeros)), ok(0))) |
top#(mark(U11(length(nil), 0))) → top#(U11(length(ok(nil)), ok(0))) | top#(mark(U11(length(cons(_x51, _x52)), 0))) → top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) |
top#(mark(U11(length(0), 0))) → top#(U11(length(ok(0)), ok(0))) |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, _x52)))) | → | top#(U11(proper(_x21), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | |
top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | |
top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | |
top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | |
top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | |
top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | |
top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | |
top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) |
top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) → top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) → top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(0, U12(_x51, _x52)))) → top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(tt, _x52)))) → top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) → top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(nil, U12(_x51, _x52)))) → top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) → top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) → top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) |
top#(mark(U11(zeros, U12(_x51, _x52)))) → top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) → top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) → top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) → top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) → top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, tt)))) → top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) |
top#(mark(U11(_x21, U12(_x51, 0)))) → top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(_x21, U12(_x51, nil)))) → top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) |
top#(mark(U11(_x21, U12(nil, _x52)))) → top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) → top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) |
top#(mark(U11(_x21, U12(0, _x52)))) → top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) → top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) → top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) → top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) → top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, zeros)))) → top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) |
top#(mark(U11(tt, U12(_x51, _x52)))) → top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) → top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) → top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(s(_x41), _x22))) | → | top#(U11(s(proper(_x41)), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | |
top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(length(proper(_x61))), proper(_x22))) | |
top#(U11(s(proper(_x41)), ok(0))) | |
top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(U11(s(proper(_x41)), length(proper(_x51)))) | |
top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(U11(s(proper(_x41)), s(proper(_x51)))) | |
top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(U11(s(ok(0)), proper(_x22))) | |
top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(s(s(proper(_x61))), proper(_x22))) | |
top#(U11(s(proper(_x41)), ok(zeros))) | |
top#(U11(s(ok(nil)), proper(_x22))) | |
top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(U11(s(ok(tt)), proper(_x22))) | |
top#(U11(s(proper(_x41)), ok(tt))) | |
top#(U11(s(proper(_x41)), ok(nil))) | |
top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) |
top#(mark(U11(s(zeros), _x22))) → top#(U11(s(ok(zeros)), proper(_x22))) | top#(mark(U11(s(_x41), s(_x51)))) → top#(U11(s(proper(_x41)), s(proper(_x51)))) |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) → top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), U11(_x51, _x52)))) → top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) |
top#(mark(U11(s(_x41), nil))) → top#(U11(s(proper(_x41)), ok(nil))) | top#(mark(U11(s(s(_x61)), _x22))) → top#(U11(s(s(proper(_x61))), proper(_x22))) |
top#(mark(U11(s(_x41), cons(_x51, _x52)))) → top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), zeros))) → top#(U11(s(proper(_x41)), ok(zeros))) |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) → top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(tt), _x22))) → top#(U11(s(ok(tt)), proper(_x22))) |
top#(mark(U11(s(_x41), 0))) → top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(s(_x41), tt))) → top#(U11(s(proper(_x41)), ok(tt))) |
top#(mark(U11(s(0), _x22))) → top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) → top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) → top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(length(_x61)), _x22))) → top#(U11(s(length(proper(_x61))), proper(_x22))) |
top#(mark(U11(s(_x41), length(_x51)))) → top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(s(nil), _x22))) → top#(U11(s(ok(nil)), proper(_x22))) |
top#(mark(U11(s(_x41), s(_x51)))) | → | top#(U11(s(proper(_x41)), s(proper(_x51)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(proper(_x41)), s(ok(0)))) | |
top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | |
top#(U11(s(ok(zeros)), s(proper(_x51)))) | |
top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(U11(s(ok(tt)), s(proper(_x51)))) | |
top#(U11(s(proper(_x41)), s(ok(tt)))) | |
top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(U11(s(ok(nil)), s(proper(_x51)))) | |
top#(U11(s(proper(_x41)), s(ok(nil)))) | |
top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | |
top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | |
top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) |
top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) → top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | top#(mark(U11(s(_x41), s(0)))) → top#(U11(s(proper(_x41)), s(ok(0)))) |
top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(s(s(_x51)), s(_x51)))) → top#(U11(s(s(proper(_x51))), s(proper(_x51)))) |
top#(mark(U11(s(_x41), s(s(_x61))))) → top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | top#(mark(U11(s(_x41), s(tt)))) → top#(U11(s(proper(_x41)), s(ok(tt)))) |
top#(mark(U11(s(zeros), s(_x51)))) → top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(s(0), s(_x51)))) → top#(U11(s(ok(0)), s(proper(_x51)))) |
top#(mark(U11(s(_x41), s(zeros)))) → top#(U11(s(proper(_x41)), s(ok(zeros)))) | top#(mark(U11(s(_x41), s(nil)))) → top#(U11(s(proper(_x41)), s(ok(nil)))) |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) → top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(s(length(_x51)), s(_x51)))) → top#(U11(s(length(proper(_x51))), s(proper(_x51)))) |
top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) → top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) → top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) → top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(s(tt), s(_x51)))) → top#(U11(s(ok(tt)), s(proper(_x51)))) |
top#(mark(U11(s(_x41), s(length(_x61))))) → top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(nil), s(_x51)))) → top#(U11(s(ok(nil)), s(proper(_x51)))) |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(s(_x41), s(tt)))) | → | top#(U11(s(proper(_x41)), s(ok(tt)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | |
top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | |
top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(proper(_x41)), ok(s(tt)))) | |
top#(U11(s(ok(nil)), s(ok(tt)))) | |
top#(U11(s(ok(zeros)), s(ok(tt)))) | |
top#(U11(s(ok(0)), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(s(proper(_x51))), s(ok(tt)))) | |
top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(s(_x51)), s(tt)))) → top#(U11(s(s(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(length(_x51)), s(tt)))) → top#(U11(s(length(proper(_x51))), s(ok(tt)))) |
top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) → top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(nil), s(tt)))) → top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) → top#(U11(s(U11(proper(_x51), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(ok(tt)), s(ok(tt)))) | top#(mark(U11(s(0), s(tt)))) → top#(U11(s(ok(0)), s(ok(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(proper(_x41)), ok(s(tt)))) | top#(mark(U11(s(zeros), s(tt)))) → top#(U11(s(ok(zeros)), s(ok(tt)))) |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | |
top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(nil, _x52)), s(tt)))) → top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, nil)), s(tt)))) → top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) |
top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) → top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) → top#(U11(s(cons(proper(_x51), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(0, _x52)), s(tt)))) → top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) → top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, tt)), s(tt)))) → top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) |
top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) → top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) → top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) → top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) → top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(tt, _x52)), s(tt)))) → top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) → top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) → top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) → top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | |
top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | |
top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | |
top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | |
top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | |
top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | |
top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) → top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) → top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) → top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) → top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) → top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) → top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) → top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) → top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | |
top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | |
top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(0)) | → | top#(ok(0)) | |
top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | |
top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | |
top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) → top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) → top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) → top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, nil)), s(tt)))) → top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) → top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) |
top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) → top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, 0)), s(tt)))) → top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, tt)), s(tt)))) → top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(s(U11(nil, _x52)), s(tt)))) → top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) → top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) → top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) → top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) → top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) → top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) → top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(0, _x52)), s(tt)))) → top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) |
top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) → top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, nil)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | top#(ok(length(_x21))) | → | top#(length(active(_x21))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(s(U11(0, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | |
top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | top#(mark(U11(s(U11(nil, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, tt)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | |
top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | top#(mark(U11(s(U11(_x51, 0)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(cons(ok(0), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) | |
top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(nil, zeros)), s(tt)))) → top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(tt, zeros)), s(tt)))) → top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(zeros, zeros)), s(tt)))) → top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(cons(_x61, _x62), zeros)), s(tt)))) → top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(U12(_x61, _x62), zeros)), s(tt)))) → top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) → top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) |
top#(mark(U11(s(cons(0, zeros)), s(tt)))) → top#(U11(s(cons(ok(0), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(s(_x61), zeros)), s(tt)))) → top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(U11(_x61, _x62), zeros)), s(tt)))) → top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) → top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(0, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(0), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(s(cons(U12(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | |
top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | |
top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | |
top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | |
top#(ok(length(nil))) | → | top#(mark(0)) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, nil)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(s(U11(0, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | top#(mark(U11(s(U11(nil, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(U11(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(s(cons(zeros, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | |
top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | top#(mark(U11(s(cons(tt, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(cons(nil, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, tt)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(s(cons(s(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, 0)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | top#(mark(nil)) | → | top#(ok(nil)) | |
top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(cons(length(ok(zeros)), length(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), ok(tt))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), ok(zeros))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), s(proper(_x61)))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), ok(nil))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), ok(0))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(U11(s(cons(ok(length(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(U11(s(cons(length(ok(zeros)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), length(_x61))), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), tt)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), ok(tt))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), 0)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), U12(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), zeros)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), cons(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), U11(_x61, _x62))), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) → top#(U11(s(cons(ok(length(zeros)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), nil)), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), ok(nil))), s(ok(tt)))) |
top#(mark(U11(s(cons(length(zeros), s(_x61))), s(tt)))) → top#(U11(s(cons(length(ok(zeros)), s(proper(_x61)))), s(ok(tt)))) |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(proper(_x41)), ok(s(tt)))) | top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | |
top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(0, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(0), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(U12(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | |
top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, nil)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(ok(length(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(0, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(U11(s(cons(length(zeros), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | |
top#(mark(U11(s(U11(nil, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(s(cons(length(zeros), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | |
top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), zeros)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(zeros))), s(ok(tt)))) | |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | top#(mark(U11(s(cons(zeros, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(s(cons(tt, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(nil, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(s(cons(length(zeros), 0)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(ok(s(_x21))) | → | top#(s(active(_x21))) | top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(zeros), nil)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, tt)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(s(cons(length(zeros), tt)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(s(cons(s(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(s(cons(length(zeros), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | |
top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | |
top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | |
top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(s(U11(_x51, 0)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | |
top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(s(cons(length(zeros), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(ok(tt)), ok(s(tt)))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(U12(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(ok(nil)), ok(s(tt)))) | |
top#(U11(s(ok(zeros)), ok(s(tt)))) | |
top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(U11(s(s(proper(_x51))), ok(s(tt)))) | |
top#(U11(s(ok(0)), ok(s(tt)))) | |
top#(U11(s(length(proper(_x51))), ok(s(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(ok(nil)), ok(s(tt)))) | top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(U12(proper(_x51), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(length(proper(_x51))), ok(s(tt)))) | top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(ok(tt)), ok(s(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(ok(0)), ok(s(tt)))) | top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(s(proper(_x51))), ok(s(tt)))) | top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(ok(zeros)), ok(s(tt)))) |
top#(mark(U11(s(tt), s(tt)))) → top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) |
top#(mark(U11(cons(length(_x61), nil), _x22))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, zeros))) | → | top#(U11(proper(_x21), ok(zeros))) | |
top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(length(ok(nil)), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(ok(cons(_x21, _x22))) | → | top#(cons(active(_x21), _x22)) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(0, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(0), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(_x61))))) | → | top#(U11(s(proper(_x41)), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | |
top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(length(proper(_x51))), ok(s(tt)))) | |
top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | |
top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | |
top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | |
top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, nil)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | |
top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), ok(s(tt)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(ok(length(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(s(proper(_x51))), ok(s(tt)))) | |
top#(mark(U11(s(U11(0, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | |
top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(U11(s(cons(length(zeros), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | |
top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | |
top#(mark(U11(s(U11(nil, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(s(cons(length(zeros), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(nil)), ok(s(tt)))) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | |
top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(cons(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(zeros), zeros)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(zeros))), s(ok(tt)))) | top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | |
top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(U11(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(tt)) | → | top#(ok(tt)) | |
top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(s(cons(zeros, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | |
top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | |
top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | top#(mark(U11(s(cons(tt, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(cons(nil, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | |
top#(mark(zeros)) | → | top#(ok(zeros)) | top#(mark(U11(s(cons(length(zeros), 0)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(cons(length(zeros), nil)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, tt)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | |
top#(mark(U11(s(cons(length(zeros), tt)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(tt))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | |
top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | |
top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(cons(s(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(zeros)), ok(s(tt)))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | |
top#(mark(U11(s(cons(length(zeros), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | |
top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | |
top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | |
top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(0)), ok(s(tt)))) | top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | |
top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, 0)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | |
top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(s(cons(length(zeros), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | |
top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, cons, nil, top
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(cons(length(length(proper(_x71))), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(ok(nil)), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), length(proper(_x51)))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), ok(nil))) | |
top#(U11(cons(length(U12(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(U11(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), ok(0))) | |
top#(U11(cons(length(s(proper(_x71))), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(ok(zeros)), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), cons(proper(_x51), proper(_x52)))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), ok(zeros))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), s(proper(_x51)))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(U11(cons(length(ok(0)), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(proper(_x61)), ok(nil)), ok(tt))) | |
top#(U11(cons(length(ok(tt)), ok(nil)), proper(_x22))) | |
top#(U11(cons(length(cons(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(length(_x61), nil), zeros))) → top#(U11(cons(length(proper(_x61)), ok(nil)), ok(zeros))) | top#(mark(U11(cons(length(_x61), nil), U12(_x51, _x52)))) → top#(U11(cons(length(proper(_x61)), ok(nil)), U12(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(length(length(_x71)), nil), _x22))) → top#(U11(cons(length(length(proper(_x71))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(_x61), nil), U11(_x51, _x52)))) → top#(U11(cons(length(proper(_x61)), ok(nil)), U11(proper(_x51), proper(_x52)))) |
top#(mark(U11(cons(length(zeros), nil), _x22))) → top#(U11(cons(length(ok(zeros)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(tt), nil), _x22))) → top#(U11(cons(length(ok(tt)), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(length(_x61), nil), cons(_x51, _x52)))) → top#(U11(cons(length(proper(_x61)), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(_x61), nil), nil))) → top#(U11(cons(length(proper(_x61)), ok(nil)), ok(nil))) |
top#(mark(U11(cons(length(_x61), nil), s(_x51)))) → top#(U11(cons(length(proper(_x61)), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(length(_x61), nil), length(_x51)))) → top#(U11(cons(length(proper(_x61)), ok(nil)), length(proper(_x51)))) |
top#(mark(U11(cons(length(U12(_x71, _x72)), nil), _x22))) → top#(U11(cons(length(U12(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(0), nil), _x22))) → top#(U11(cons(length(ok(0)), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(length(nil), nil), _x22))) → top#(U11(cons(length(ok(nil)), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(_x61), nil), 0))) → top#(U11(cons(length(proper(_x61)), ok(nil)), ok(0))) |
top#(mark(U11(cons(length(cons(_x71, _x72)), nil), _x22))) → top#(U11(cons(length(cons(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(_x61), nil), tt))) → top#(U11(cons(length(proper(_x61)), ok(nil)), ok(tt))) |
top#(mark(U11(cons(length(s(_x71)), nil), _x22))) → top#(U11(cons(length(s(proper(_x71))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(U11(_x71, _x72)), nil), _x22))) → top#(U11(cons(length(U11(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) |
top#(mark(U11(cons(U11(_x61, cons(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), cons(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(cons(_x81, _x82), cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(cons(proper(_x81), proper(_x82)), cons(proper(_x81), s(proper(_x111)))))))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, _x72)))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(length(length(cons(_x81, _x82))), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(cons(proper(_x81), proper(_x82)))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, zeros)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(zeros)))) | top#(mark(U11(s(cons(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(length(0)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), s(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), s(proper(_x91)))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(0, tt)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(tt))), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), nil), length(_x51)))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), length(proper(_x51)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U12(_x101, _x102), s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U12(proper(_x101), proper(_x102)), s(s(proper(_x131))))))))) | |
top#(mark(U11(cons(_x41, nil), tt))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(tt))) | top#(mark(U11(cons(U11(length(s(_x81)), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(s(proper(_x81))), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(cons(length(length(zeros)), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(tt, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(tt), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(length(tt)), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(tt))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, nil)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(nil)))) | top#(mark(U11(length(cons(_x61, _x62)), _x22))) | → | top#(U11(length(cons(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(_x21, U12(nil, _x52)))) | → | top#(U11(proper(_x21), U12(ok(nil), proper(_x52)))) | top#(mark(U11(s(cons(length(length(nil)), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(_x61), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(0)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, cons(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), cons(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(cons(length(length(_x51)), nil), nil))) | → | top#(U11(cons(length(length(proper(_x51))), ok(nil)), ok(nil))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(ok(cons(length(_x41), _x22))) | → | top#(cons(length(active(_x41)), _x22)) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), tt))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), ok(tt))) | top#(mark(U11(s(cons(length(length(_x71)), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(tt))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(ok(tt))))))))) | top#(mark(U11(cons(_x41, U11(0, zeros)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(zeros))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(U11(_x81, _x82), cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U11(proper(_x81), proper(_x82)), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(_x21, U12(U12(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U12(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U12(_x101, _x102), _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U12(proper(_x101), proper(_x102)), proper(_x82))))))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(tt)))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(ok(tt)))) | top#(ok(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(active(_x41), _x42), _x22)) | |
top#(mark(U11(cons(_x41, tt), _x22))) | → | top#(U11(cons(proper(_x41), ok(tt)), proper(_x22))) | top#(mark(U11(s(tt), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(ok(tt)), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), ok(tt))), ok(s(tt)))) | top#(mark(U11(s(cons(_x51, zeros)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), ok(s(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), ok(s(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(zeros))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(ok(zeros))))))))) | |
top#(mark(U11(cons(length(zeros), nil), nil))) | → | top#(U11(cons(length(ok(zeros)), ok(nil)), ok(nil))) | top#(mark(U11(cons(s(_x51), U11(0, _x72)), nil))) | → | top#(U11(cons(s(proper(_x51)), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(s(_x41), s(s(cons(_x71, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(cons(proper(_x71), proper(_x72)))))) | top#(mark(U11(length(nil), s(_x51)))) | → | top#(U11(length(ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(s(_x41), s(cons(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(cons(proper(_x61), proper(_x62))))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, cons(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), cons(proper(_x81), proper(_x82)))), proper(_x22))) | |
top#(mark(U11(_x21, 0))) | → | top#(U11(proper(_x21), ok(0))) | top#(mark(U11(s(cons(length(zeros), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(cons(length(_x61), nil), cons(_x51, _x52)))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(length(nil), U11(_x51, _x52)))) | → | top#(U11(length(ok(nil)), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, nil), length(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), length(proper(_x51)))) | top#(mark(U11(s(cons(length(length(_x71)), s(zeros))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(ok(zeros)))), s(ok(tt)))) | |
top#(mark(U11(U12(_x41, U12(_x51, _x52)), zeros))) | → | top#(U11(U12(proper(_x41), U12(proper(_x51), proper(_x52))), ok(zeros))) | top#(mark(U11(cons(_x41, U11(_x71, tt)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), ok(tt))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), U12(_x51, _x52)))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(length(0), _x22))) | → | top#(U11(length(ok(0)), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(s(_x81))), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(s(proper(_x81)))), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(0))))) | → | top#(U11(s(proper(_x41)), s(s(ok(0))))) | |
top#(mark(U11(s(cons(length(length(_x71)), 0)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), ok(0))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(U11(_x81, _x82), cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U11(proper(_x81), proper(_x82)), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(U12(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U12(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(_x61), tt)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(cons(_x131, _x132))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(cons(proper(_x131), proper(_x132))))))))) | top#(mark(U11(s(0), s(s(_x61))))) | → | top#(U11(s(ok(0)), s(s(proper(_x61))))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(cons(proper(_x61), proper(_x62)), proper(_x52))), ok(s(tt)))) | top#(mark(U11(cons(U12(_x61, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(length(tt), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(ok(tt)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(length(nil)), s(nil))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(ok(nil)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(0)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(length(0))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(length(_x101), _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(length(proper(_x101)), proper(_x82))))))) | |
top#(mark(U11(s(cons(length(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, tt)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(tt)))) | |
top#(mark(U11(cons(_x41, length(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), length(proper(_x71))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(nil))))) | → | top#(U11(s(proper(_x41)), s(s(ok(nil))))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(s(_x101), _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(s(proper(_x101)), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, zeros)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), ok(zeros))))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x61)), _x22))) | → | top#(U11(s(s(proper(_x61))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), length(_x71)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), length(proper(_x71))), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(s(_x81))), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(s(proper(_x81)))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(s(_x81))), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(s(proper(_x81)))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(s(_x61))))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(s(proper(_x61))))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), ok(U11(0, 0))), proper(_x22))) | top#(mark(U11(cons(_x41, U11(s(_x91), _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(s(proper(_x91)), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, length(_x81))), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), length(proper(_x81)))), proper(_x22))) | top#(mark(U11(s(nil), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(ok(nil)), s(s(U11(proper(_x71), proper(_x72)))))) | |
top#(mark(U11(cons(_x41, U11(_x71, U12(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), U12(proper(_x101), proper(_x102)))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, length(_x71)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), length(proper(_x71))), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(length(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(U12(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(U12(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(ok(zeros)) | → | top#(mark(cons(0, zeros))) | top#(mark(U11(s(_x41), s(s(U11(U12(_x81, _x82), cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U12(proper(_x81), proper(_x82)), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(cons(length(_x61), nil), U11(_x51, _x52)))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, length(_x81))), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), length(proper(_x81)))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(cons(_x91, _x92), _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(cons(proper(_x91), proper(_x92)), proper(_x72))), proper(_x22))) | top#(mark(U11(length(length(_x51)), 0))) | → | top#(U11(length(length(proper(_x51))), ok(0))) | |
top#(mark(U11(cons(_x41, nil), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(length(_x71)), s(0))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(ok(0)))), s(ok(tt)))) | |
top#(mark(U11(s(U11(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(length(_x101), _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(length(proper(_x101)), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(length(zeros), 0))) | → | top#(U11(length(ok(zeros)), ok(0))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), s(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), s(proper(_x51)))) | top#(mark(U11(s(cons(length(length(nil)), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(nil, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(nil), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), s(proper(_x61)))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(zeros), 0)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(0))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(cons(_x81, _x82)), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(cons(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, s(_x71)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), s(proper(_x71))), U11(ok(0), proper(_x72))), proper(_x22))) | top#(ok(U11(s(_x41), _x22))) | → | top#(U11(s(active(_x41)), _x22)) | |
top#(mark(U11(s(s(_x51)), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(s(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(ok(s(_x21))) | → | top#(s(active(_x21))) | |
top#(mark(U11(zeros, zeros))) | → | top#(U11(ok(zeros), ok(zeros))) | top#(mark(U11(s(cons(length(length(_x71)), s(nil))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(ok(nil)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, 0)), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(s(proper(_x61))))) | top#(mark(U11(cons(_x41, U11(0, 0)), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(0))), ok(nil))) | |
top#(mark(U11(cons(U11(length(_x71), length(_x71)), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), length(proper(_x71))), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(nil, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(nil), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(length(_x51)), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(length(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), tt))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), ok(tt))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), cons(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(length(U11(_x51, _x52)), nil), nil))) | → | top#(U11(cons(length(U11(proper(_x51), proper(_x52))), ok(nil)), ok(nil))) | |
top#(mark(U11(s(cons(_x51, zeros)), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), ok(zeros))), s(s(proper(_x61))))) | top#(mark(U11(cons(zeros, _x42), _x22))) | → | top#(U11(cons(ok(zeros), proper(_x42)), proper(_x22))) | |
top#(mark(U11(s(cons(tt, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), nil), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(nil)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(cons(0, nil), _x22))) | → | top#(U11(cons(ok(0), ok(nil)), proper(_x22))) | top#(mark(U11(s(_x41), length(_x51)))) | → | top#(U11(s(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(0, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(ok(0), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(cons(_x51, _x52), U11(0, _x72)), nil))) | → | top#(U11(cons(cons(proper(_x51), proper(_x52)), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(U11(_x81, _x82), _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U11(proper(_x81), proper(_x82)), proper(_x72)))))) | |
top#(mark(U11(U12(nil, _x42), zeros))) | → | top#(U11(U12(ok(nil), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(_x41, U12(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U12(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(zeros, U11(0, _x72)), nil))) | → | top#(U11(cons(ok(zeros), U11(ok(0), proper(_x72))), ok(nil))) | top#(mark(U11(length(nil), tt))) | → | top#(U11(length(ok(nil)), ok(tt))) | |
top#(mark(U11(s(cons(length(length(cons(_x81, _x82))), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(cons(proper(_x81), proper(_x82)))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(length(_x41), length(_x51)))) | → | top#(U11(length(proper(_x41)), length(proper(_x51)))) | |
top#(mark(U11(s(cons(s(_x61), zeros)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(zeros)), ok(s(tt)))) | |
top#(mark(U11(U12(U11(_x51, _x52), _x42), zeros))) | → | top#(U11(U12(U11(proper(_x51), proper(_x52)), proper(_x42)), ok(zeros))) | top#(mark(U11(s(cons(length(length(nil)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(length(nil))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(tt, _x52)))) | → | top#(U11(proper(_x21), U12(ok(tt), proper(_x52)))) | top#(mark(U11(cons(U11(nil, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(ok(nil), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(length(proper(_x61)), proper(_x52))), ok(s(tt)))) | top#(mark(U11(cons(s(_x61), U11(0, _x72)), _x22))) | → | top#(U11(cons(s(proper(_x61)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(_x51)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(proper(_x51)))) | |
top#(mark(U11(s(U11(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(0, _x72)), length(_x51)))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), length(proper(_x51)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(s(_x71)))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(s(proper(_x71)))))) | top#(mark(U11(cons(U11(_x61, nil), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), ok(nil)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), cons(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), cons(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), ok(s(tt)))) | top#(mark(U11(s(U11(_x51, _x52)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(ok(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(active(_x41), _x42), _x22)) | top#(mark(U11(s(cons(length(length(cons(_x81, _x82))), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(cons(proper(_x81), proper(_x82)))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(0)), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(nil)), s(U12(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(U12(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(0, nil)), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(nil))), ok(nil))) | top#(mark(U11(cons(0, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(ok(0), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(tt), s(s(_x61))))) | → | top#(U11(s(ok(tt)), s(s(proper(_x61))))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(s(proper(_x61))))) | |
top#(mark(U11(_x21, U12(zeros, _x52)))) | → | top#(U11(proper(_x21), U12(ok(zeros), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(cons(_x141, _x142)))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(cons(proper(_x141), proper(_x142)))))))))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, tt)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), ok(tt))))), s(ok(tt)))) | top#(mark(U11(cons(cons(_x61, _x62), nil), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(zeros, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(ok(zeros), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(0, tt)), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(tt))), ok(nil))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(tt, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(tt), s(s(proper(_x131))))))))) | top#(mark(U11(cons(_x41, U11(0, _x72)), 0))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), ok(0))) | |
top#(mark(U11(cons(U11(length(_x71), tt), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(tt)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), cons(_x71, _x72)), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), cons(proper(_x71), proper(_x72))), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(U12(_x41, length(_x51)), zeros))) | → | top#(U11(U12(proper(_x41), length(proper(_x51))), ok(zeros))) | |
top#(mark(U11(U12(zeros, _x42), zeros))) | → | top#(U11(U12(ok(zeros), proper(_x42)), ok(zeros))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(cons(_x71, _x72)))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(cons(proper(_x71), proper(_x72)))))) | |
top#(mark(U11(s(cons(length(0), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(0)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(cons(_x81, _x82)), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(cons(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(0, _x72)), zeros))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), ok(zeros))) | top#(mark(U11(cons(_x41, U11(_x71, 0)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), ok(0))), proper(_x22))) | |
top#(mark(U11(s(tt), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(ok(tt)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(s(U11(tt, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(tt), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(s(_x81)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(s(proper(_x81))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), tt), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(tt)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(U12(_x41, nil), zeros))) | → | top#(U11(U12(proper(_x41), ok(nil)), ok(zeros))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), s(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), s(proper(_x51)))) | top#(mark(U11(cons(U11(length(nil), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(nil)), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(length(nil), 0))) | → | top#(U11(length(ok(nil)), ok(0))) | top#(mark(U11(s(U11(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, U12(_x101, _x102)), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), U12(proper(_x101), proper(_x102))), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(length(_x81), cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(length(proper(_x81)), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), nil))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), ok(nil))) | top#(mark(U11(s(U11(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(cons(length(length(_x71)), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), U11(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(_x41), _x22))) | → | top#(U11(length(active(_x41)), _x22)) | top#(mark(U11(s(cons(length(length(0)), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(0), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(ok(0)), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(_x41), 0))) | → | top#(U11(s(proper(_x41)), ok(0))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(nil, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(ok(nil), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), s(_x71)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), s(proper(_x71))), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, nil)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), ok(nil))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), length(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), length(proper(_x51)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, 0), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), ok(0)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(s(_x91), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(s(proper(_x91)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, nil))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), ok(nil))))))) | top#(mark(U11(s(s(_x51)), s(s(_x61))))) | → | top#(U11(s(s(proper(_x51))), s(s(proper(_x61))))) | |
top#(mark(U11(cons(0, U11(0, tt)), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), ok(tt))), ok(nil))) | top#(mark(U11(cons(_x41, zeros), _x22))) | → | top#(U11(cons(proper(_x41), ok(zeros)), proper(_x22))) | |
top#(mark(U11(length(_x41), tt))) | → | top#(U11(length(proper(_x41)), ok(tt))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, s(_x101)), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), s(proper(_x101))), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), s(_x51)))) | → | top#(U11(length(proper(_x41)), s(proper(_x51)))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, s(_x81))), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), s(proper(_x81)))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, cons(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), cons(proper(_x101), proper(_x102)))), proper(_x22))) | top#(mark(U11(length(U12(_x51, _x52)), 0))) | → | top#(U11(length(U12(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(nil), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(ok(nil)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(tt, tt))) | → | top#(U11(ok(tt), ok(tt))) | |
top#(mark(U11(cons(U12(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(s(_x101), s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(s(proper(_x101)), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(_x51)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(proper(_x51)))) | top#(mark(U11(s(cons(length(length(nil)), s(nil))), s(tt)))) | → | top#(U11(s(cons(length(ok(length(nil))), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(nil)), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(U11(_x81, _x82))), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(U11(proper(_x81), proper(_x82)))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(zeros, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(zeros), s(proper(_x111)))))))) | top#(mark(U11(_x21, U12(_x51, length(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), length(proper(_x81))))) | |
top#(mark(U11(length(nil), cons(_x51, _x52)))) | → | top#(U11(length(ok(nil)), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(0, cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(0), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(_x41), s(s(U11(nil, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(nil), proper(_x72)))))) | top#(mark(U11(_x21, U12(s(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(s(proper(_x71)), proper(_x52)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, length(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), length(proper(_x91)))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), U12(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, U11(0, _x72)), s(_x51)))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), s(proper(_x51)))) | top#(mark(U11(length(tt), _x22))) | → | top#(U11(length(ok(tt)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, 0)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), ok(0)))))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(ok(tt), proper(_x52))), ok(s(tt)))) | |
top#(ok(length(cons(_x22, _x21)))) | → | top#(mark(U11(tt, _x21))) | top#(mark(U11(s(U12(_x61, _x62)), _x22))) | → | top#(U11(s(U12(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(s(_x91), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(s(proper(_x91)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, cons(_x101, _x102)), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), cons(proper(_x101), proper(_x102))), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(nil), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(nil)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(zeros, nil), _x22))) | → | top#(U11(cons(ok(zeros), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, zeros))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), ok(zeros))))))) | top#(mark(U11(cons(_x41, _x42), nil))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(nil))) | |
top#(ok(length(_x21))) | → | top#(length(active(_x21))) | top#(mark(U11(s(_x41), tt))) | → | top#(U11(s(proper(_x41)), ok(tt))) | |
top#(mark(U11(cons(_x41, U11(0, cons(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), cons(proper(_x101), proper(_x102)))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(cons(_x101, _x102), s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(cons(proper(_x101), proper(_x102)), s(proper(_x111)))))))) | |
top#(mark(U11(tt, zeros))) | → | top#(U11(ok(tt), ok(zeros))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), 0))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), ok(0))) | |
top#(mark(U11(s(_x41), s(s(tt))))) | → | top#(U11(s(proper(_x41)), s(s(ok(tt))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, U11(_x111, _x112)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), U11(proper(_x111), proper(_x112)))))))) | |
top#(mark(U11(s(U11(0, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(0), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(length(_x71)))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(length(proper(_x71)))))) | |
top#(mark(U11(cons(0, U11(0, nil)), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), ok(nil))), ok(nil))) | top#(mark(U11(0, zeros))) | → | top#(U11(ok(0), ok(zeros))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, U11(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), U11(proper(_x81), proper(_x82))))))) | top#(mark(U11(s(0), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(ok(0)), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(cons(length(_x61), 0)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(0))), s(ok(tt)))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), U11(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(s(_x51)), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(s(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(U11(0, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(ok(0), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(0), s(_x51)))) | → | top#(U11(s(ok(0)), s(proper(_x51)))) | |
top#(mark(U11(U12(_x41, zeros), zeros))) | → | top#(U11(U12(proper(_x41), ok(zeros)), ok(zeros))) | top#(mark(U11(s(_x41), s(s(U11(s(_x81), cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(s(proper(_x81)), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(_x41), s(U11(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U11(proper(_x61), proper(_x62))))) | top#(mark(U11(cons(_x41, U11(_x71, U11(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), U11(proper(_x101), proper(_x102)))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(tt, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(tt), proper(_x72)))))) | top#(mark(U11(cons(length(_x61), nil), zeros))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), ok(zeros))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(nil)), ok(s(tt)))) | top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(0, length(_x101))), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), length(proper(_x101)))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), zeros))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), ok(zeros))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(U12(_x141, _x142)))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(U12(proper(_x141), proper(_x142)))))))))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(tt)), s(ok(tt)))) | |
top#(mark(U11(cons(0, U11(0, U11(_x81, _x82))), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), U11(proper(_x81), proper(_x82)))), ok(nil))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, 0)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), ok(0))))), s(ok(tt)))) | |
top#(mark(cons(_x21, _x22))) | → | top#(cons(proper(_x21), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), zeros), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(zeros)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(nil), s(s(_x61))))) | → | top#(U11(s(ok(nil)), s(s(proper(_x61))))) | top#(mark(U11(cons(length(tt), nil), _x22))) | → | top#(U11(cons(length(ok(tt)), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(0, U11(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), U11(proper(_x101), proper(_x102)))), proper(_x22))) | top#(mark(U11(cons(tt, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(ok(tt), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(U12(_x81, _x82), _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U12(proper(_x81), proper(_x82)), proper(_x72)))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(U11(_x141, _x142)))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(U11(proper(_x141), proper(_x142)))))))))) | |
top#(mark(U11(s(U11(zeros, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(0, _x52)), s(s(_x61))))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(zeros, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(zeros), proper(_x82))))))) | |
top#(mark(U11(s(cons(_x51, nil)), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(s(proper(_x61))))) | top#(mark(U11(s(cons(0, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(0), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(nil)), s(0))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(ok(0)))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(ok(0), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(zeros), zeros)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(length(_x81))), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(length(proper(_x81)))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(tt, cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(tt), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(cons(length(length(_x71)), s(length(_x81)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(length(proper(_x81))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(nil)), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(U11(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(tt)) | → | top#(ok(tt)) | top#(mark(U11(s(cons(zeros, _x52)), s(s(_x61))))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(U12(proper(_x61), proper(_x62)), proper(_x52))), ok(s(tt)))) | top#(ok(U11(tt, _x21))) | → | top#(mark(U12(tt, _x21))) | |
top#(mark(U11(s(cons(length(length(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), proper(_x52))), ok(s(tt)))) | top#(mark(U11(cons(_x41, U11(0, cons(_x81, _x82))), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), cons(proper(_x81), proper(_x82)))), ok(nil))) | |
top#(mark(U11(_x21, U12(length(_x71), _x52)))) | → | top#(U11(proper(_x21), U12(length(proper(_x71)), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(cons(_x101, _x102), s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(cons(proper(_x101), proper(_x102)), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(_x41), s(s(U11(s(_x81), _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(s(proper(_x81)), proper(_x72)))))) | top#(mark(U11(U12(_x41, _x42), _x22))) | → | top#(U11(U12(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(U11(length(zeros), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(zeros)), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(length(cons(_x51, _x52)), 0))) | → | top#(U11(length(cons(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, nil), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), ok(nil)), proper(_x82))))), s(ok(tt)))) | top#(mark(zeros)) | → | top#(ok(zeros)) | |
top#(mark(U11(cons(_x41, 0), _x22))) | → | top#(U11(cons(proper(_x41), ok(0)), proper(_x22))) | top#(mark(U11(s(cons(tt, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(tt), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(length(nil), U12(_x51, _x52)))) | → | top#(U11(length(ok(nil)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(0))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(ok(0))))) | |
top#(mark(U11(s(cons(length(length(tt)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(tt))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(0, U12(_x81, _x82))), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), U12(proper(_x81), proper(_x82)))), ok(nil))) | |
top#(mark(U11(s(cons(_x61, _x62)), _x22))) | → | top#(U11(s(cons(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), U12(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), U12(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), U12(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(_x21, U12(_x51, U12(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U12(proper(_x81), proper(_x82))))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, nil)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), ok(nil))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(U11(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(U11(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, U11(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), U11(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(U11(_x41, _x42), _x22))) | → | top#(U11(U11(proper(_x41), proper(_x42)), proper(_x22))) | |
top#(mark(U11(cons(length(U12(_x71, _x72)), nil), _x22))) | → | top#(U11(cons(length(U12(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | top#(mark(U12(_x21, _x22))) | → | top#(U12(proper(_x21), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(0, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(0), s(s(proper(_x131))))))))) | top#(mark(U11(s(cons(length(length(nil)), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, zeros), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), ok(zeros)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), U11(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), U11(proper(_x51), proper(_x52)))) | |
top#(ok(U11(length(nil), _x22))) | → | top#(U11(mark(0), _x22)) | top#(mark(U11(cons(s(_x61), nil), _x22))) | → | top#(U11(cons(s(proper(_x61)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(nil)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(ok(nil)))))))) | top#(mark(U11(s(cons(length(length(tt)), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(tt))), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(0), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(ok(0)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), 0))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), ok(0))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(nil, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(ok(nil), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), U12(_x71, _x72)), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), U12(proper(_x71), proper(_x72))), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), length(_x51)))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), length(proper(_x51)))) | |
top#(mark(U11(cons(tt, nil), _x22))) | → | top#(U11(cons(ok(tt), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), length(_x51)))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), length(proper(_x51)))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), s(_x51)))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), s(proper(_x51)))) | top#(mark(U11(s(length(_x51)), s(_x51)))) | → | top#(U11(s(length(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(s(cons(length(length(nil)), tt)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), ok(tt))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(zeros, cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(zeros), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(0), _x22))) | → | top#(U11(s(ok(0)), proper(_x22))) | |
top#(mark(U11(cons(length(s(_x71)), nil), _x22))) | → | top#(U11(cons(length(s(proper(_x71))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(_x41, U11(0, U12(_x101, _x102))), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), U12(proper(_x101), proper(_x102)))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(_x71, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(nil, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(0)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(ok(0)))))))) | top#(mark(U11(s(cons(length(length(length(_x81))), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(length(proper(_x81)))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(0, 0)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(cons(_x101, _x102), _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(cons(proper(_x101), proper(_x102)), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(U11(_x41, _x42), tt))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(tt))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, s(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), s(proper(_x91)))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), tt)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), ok(tt))), s(ok(tt)))) | top#(mark(U11(cons(length(s(_x51)), nil), nil))) | → | top#(U11(cons(length(s(proper(_x51))), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), cons(_x51, _x52)))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, zeros)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), ok(zeros))))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), zeros))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, U11(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), U11(proper(_x81), proper(_x82)))), proper(_x22))) | top#(mark(U11(s(cons(length(s(_x71)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(s(proper(_x71))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), length(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), length(proper(_x91)))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(cons(_x101, _x102), _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(cons(proper(_x101), proper(_x102)), proper(_x82))))))) | |
top#(mark(U11(_x21, U12(_x51, 0)))) | → | top#(U11(proper(_x21), U12(proper(_x51), ok(0)))) | top#(mark(U11(length(U11(_x51, _x52)), 0))) | → | top#(U11(length(U11(proper(_x51), proper(_x52))), ok(0))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, zeros)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), ok(zeros)))))) | top#(mark(U11(s(_x41), s(s(U11(cons(_x81, _x82), _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(cons(proper(_x81), proper(_x82)), proper(_x72)))))) | |
top#(mark(U11(cons(U11(U12(_x71, _x72), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(U12(proper(_x71), proper(_x72)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(tt)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(ok(tt)))))))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(nil, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(nil), proper(_x82))))))) | top#(mark(U11(_x21, s(_x51)))) | → | top#(U11(proper(_x21), s(proper(_x51)))) | |
top#(mark(U11(cons(length(0), nil), _x22))) | → | top#(U11(cons(length(ok(0)), ok(nil)), proper(_x22))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, s(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), s(proper(_x91)))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), proper(_x82))))), ok(s(tt)))) | top#(mark(U11(s(nil), s(_x51)))) | → | top#(U11(s(ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), cons(proper(_x61), proper(_x62)))), ok(s(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(U11(proper(_x61), proper(_x62)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(tt, U12(_x51, _x52)))) | → | top#(U11(ok(tt), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(U11(_x51, U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, cons(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), cons(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(cons(zeros, U11(0, _x72)), _x22))) | → | top#(U11(cons(ok(zeros), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(U12(_x41, s(_x51)), zeros))) | → | top#(U11(U12(proper(_x41), s(proper(_x51))), ok(zeros))) | top#(mark(U11(s(cons(length(length(0)), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, zeros)), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), ok(zeros))), proper(_x22))) | top#(mark(U11(s(U11(_x51, 0)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(0))), s(ok(tt)))) | |
top#(mark(U11(cons(cons(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(length(_x91), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(length(proper(_x91)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(0, zeros)), s(tt)))) | → | top#(U11(s(ok(cons(0, zeros))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(nil), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(ok(nil)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(length(0), 0))) | → | top#(U11(length(ok(0)), ok(0))) | top#(mark(U11(s(zeros), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(ok(zeros)), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, cons(_x111, _x112)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), cons(proper(_x111), proper(_x112)))))))) | top#(mark(U11(cons(tt, _x42), _x22))) | → | top#(U11(cons(ok(tt), proper(_x42)), proper(_x22))) | |
top#(mark(nil)) | → | top#(ok(nil)) | top#(mark(U11(s(cons(length(zeros), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(U11(_x91, _x92), _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(U11(proper(_x91), proper(_x92)), proper(_x72))), proper(_x22))) | top#(mark(U11(s(zeros), s(_x51)))) | → | top#(U11(s(ok(zeros)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(0, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(ok(0), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(length(_x51), U11(0, _x72)), nil))) | → | top#(U11(cons(length(proper(_x51)), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(length(length(_x61)), _x22))) | → | top#(U11(length(length(proper(_x61))), proper(_x22))) | top#(mark(U11(zeros, _x22))) | → | top#(U11(ok(zeros), proper(_x22))) | |
top#(mark(U11(cons(0, U11(0, zeros)), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), ok(zeros))), ok(nil))) | top#(mark(U11(cons(_x41, U11(0, _x72)), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(U12(_x61, _x62)), _x22))) | → | top#(U11(length(U12(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(s(_x141)))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(s(proper(_x141)))))))))) | |
top#(mark(U11(s(_x41), s(s(U11(length(_x81), cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(length(proper(_x81)), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(length(_x101), s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(length(proper(_x101)), s(proper(_x111)))))))) | |
top#(mark(U11(cons(U11(U11(_x71, _x72), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(U11(proper(_x71), proper(_x72)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, nil), s(_x51)))) | → | top#(U11(cons(proper(_x41), ok(nil)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(_x51, length(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(zeros, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(zeros), s(s(proper(_x131))))))))) | |
top#(ok(cons(length(nil), _x22))) | → | top#(cons(mark(0), _x22)) | top#(mark(U11(cons(0, U11(0, s(_x81))), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), s(proper(_x81)))), ok(nil))) | |
top#(mark(U11(cons(U12(_x51, _x52), U11(0, _x72)), nil))) | → | top#(U11(cons(U12(proper(_x51), proper(_x52)), U11(ok(0), proper(_x72))), ok(nil))) | top#(mark(U11(_x21, U11(_x51, _x52)))) | → | top#(U11(proper(_x21), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, 0))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), ok(0))))))) | top#(mark(U11(s(cons(length(length(tt)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(tt))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), proper(_x82))))), ok(s(tt)))) | top#(mark(U11(cons(U11(length(U12(_x81, _x82)), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(U12(proper(_x81), proper(_x82))), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(nil)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), ok(U11(0, 0))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, 0)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), ok(0))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), 0))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), ok(0))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(tt, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(ok(tt), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(zeros))))) | → | top#(U11(s(proper(_x41)), s(s(ok(zeros))))) | |
top#(mark(U11(cons(length(_x61), _x42), _x22))) | → | top#(U11(cons(length(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(length(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(length(proper(_x131))))))))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(U12(_x41, tt), zeros))) | → | top#(U11(U12(proper(_x41), ok(tt)), ok(zeros))) | |
top#(mark(U11(cons(cons(_x61, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(length(_x101), s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(length(proper(_x101)), s(s(proper(_x131))))))))) | |
top#(mark(U11(0, tt))) | → | top#(U11(ok(0), ok(tt))) | top#(mark(U11(length(nil), zeros))) | → | top#(U11(length(ok(nil)), ok(zeros))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(s(_x101), s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(s(proper(_x101)), s(proper(_x111)))))))) | top#(mark(U11(cons(_x41, s(_x71)), _x22))) | → | top#(U11(cons(proper(_x41), s(proper(_x71))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), zeros))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), ok(zeros))) | top#(mark(U11(cons(_x41, _x42), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, U11(0, nil)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(nil))), proper(_x22))) | top#(mark(U11(cons(U11(length(s(_x81)), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(s(proper(_x81))), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(cons(U11(cons(_x71, _x72), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(cons(proper(_x71), proper(_x72)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(nil, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(nil), s(s(proper(_x131))))))))) | |
top#(mark(U11(cons(U11(zeros, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(ok(zeros), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(U11(length(_x61), _x52)), s(tt)))) | → | top#(U11(s(U11(length(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(tt, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(ok(tt), proper(_x82))))), s(ok(tt)))) | top#(ok(length(nil))) | → | top#(mark(0)) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, U11(_x101, _x102)), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), U11(proper(_x101), proper(_x102))), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, tt), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), ok(tt)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(s(_x61), U11(_x71, _x72)), _x22))) | → | top#(U11(cons(s(proper(_x61)), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(_x61), nil)), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(nil)), s(tt))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(ok(tt)))), s(ok(tt)))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), U11(_x51, _x52)))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), U11(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(nil))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(ok(nil))))) | top#(mark(U11(s(U11(_x51, _x52)), s(s(_x61))))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, U11(_x71, s(_x101))), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), s(proper(_x101)))), proper(_x22))) | top#(ok(U12(_x21, _x22))) | → | top#(U12(active(_x21), _x22)) | |
top#(mark(U11(s(cons(length(cons(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(cons(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), zeros), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(zeros)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(U11(_x51, nil)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(U11(_x81, _x82), cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U11(proper(_x81), proper(_x82)), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(U11(length(0), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(0)), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(tt), s(_x51)))) | → | top#(U11(s(ok(tt)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(length(tt), _x52)), s(tt)))) | → | top#(U11(s(cons(length(ok(tt)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(s(_x51)), s(tt)))) | → | top#(U11(s(s(proper(_x51))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(nil, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(nil), s(proper(_x111)))))))) | top#(mark(U11(cons(0, U11(0, 0)), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), ok(0))), ok(nil))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(U11(_x131, _x132))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(U11(proper(_x131), proper(_x132))))))))) | top#(mark(s(_x21))) | → | top#(s(proper(_x21))) | |
top#(mark(U11(s(cons(_x51, 0)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(0))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(s(_x81), cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(s(proper(_x81)), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(cons(length(cons(_x51, _x52)), nil), nil))) | → | top#(U11(cons(length(cons(proper(_x51), proper(_x52))), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(length(U12(_x81, _x82))), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(U12(proper(_x81), proper(_x82)))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(s(_x101), _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(s(proper(_x101)), proper(_x82))))))) | |
top#(mark(U11(s(U11(U12(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(U12(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(nil), _x22))) | → | top#(U11(s(ok(nil)), proper(_x22))) | |
top#(mark(U11(s(_x41), s(0)))) | → | top#(U11(s(proper(_x41)), s(ok(0)))) | top#(mark(U11(s(cons(length(U11(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U11(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(cons(0, U11(0, length(_x81))), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), length(proper(_x81)))), ok(nil))) | |
top#(ok(U11(U12(tt, _x41), _x22))) | → | top#(U11(mark(s(length(_x41))), _x22)) | top#(ok(U11(cons(_x41, _x42), _x22))) | → | top#(U11(cons(active(_x41), _x42), _x22)) | |
top#(mark(U11(cons(nil, U11(0, _x72)), _x22))) | → | top#(U11(cons(ok(nil), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), length(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), length(proper(_x51)))) | |
top#(mark(U11(s(length(_x51)), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(length(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | top#(mark(U11(s(_x41), s(zeros)))) | → | top#(U11(s(proper(_x41)), s(ok(zeros)))) | |
top#(mark(U11(cons(U11(length(_x71), cons(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), cons(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(_x41, U11(0, _x72)), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(length(_x51)), s(tt)))) | → | top#(U11(s(length(proper(_x51))), s(ok(tt)))) | top#(mark(U11(U11(_x41, _x42), zeros))) | → | top#(U11(U11(proper(_x41), proper(_x42)), ok(zeros))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U11(_x101, _x102), _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U11(proper(_x101), proper(_x102)), proper(_x82))))))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(U12(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(U12(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(length(_x81)), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(length(proper(_x81))), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(U11(length(U11(_x81, _x82)), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(U11(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, length(_x81))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), length(proper(_x81))))))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), nil)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), ok(nil))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(0)), U11(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), U11(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(0, cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(0), cons(proper(_x81), s(proper(_x111)))))))) | |
top#(mark(U11(cons(_x41, U11(0, length(_x81))), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), length(proper(_x81)))), ok(nil))) | top#(mark(U11(length(_x41), zeros))) | → | top#(U11(length(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(s(_x51)), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(s(proper(_x51))), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(cons(U11(length(_x71), U11(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), U11(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(length(s(_x81)), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(s(proper(_x81))), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(length(length(nil)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(cons(_x51, tt)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(cons(_x81, _x82), cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(cons(proper(_x81), proper(_x82)), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), tt))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), ok(tt))) | top#(mark(U11(s(cons(0, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(0), ok(zeros))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(U11(_x101, _x102), _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(U11(proper(_x101), proper(_x102)), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(length(_x61), U11(_x71, _x72)), _x22))) | → | top#(U11(cons(length(proper(_x61)), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(length(_x61), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(s(_x51)), s(_x51)))) | → | top#(U11(s(s(proper(_x51))), s(proper(_x51)))) | |
top#(mark(U11(cons(U11(length(_x71), U12(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), U12(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(cons(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(cons(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(U12(U12(_x51, _x52), _x42), zeros))) | → | top#(U11(U12(U12(proper(_x51), proper(_x52)), proper(_x42)), ok(zeros))) | top#(mark(U11(s(U11(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(U11(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(tt), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(tt)), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(ok(U11(zeros, _x22))) | → | top#(U11(mark(cons(0, zeros)), _x22)) | |
top#(mark(U11(s(cons(length(length(_x71)), s(U12(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(U12(proper(_x81), proper(_x82))))), s(ok(tt)))) | top#(ok(cons(U11(_x41, _x42), _x22))) | → | top#(cons(U11(active(_x41), _x42), _x22)) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), tt)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), ok(tt))))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), s(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), s(proper(_x51)))) | |
top#(mark(U11(s(cons(length(length(0)), U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, cons(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), cons(proper(_x81), proper(_x82)))), proper(_x22))) | |
top#(mark(U11(s(U11(cons(_x61, _x62), _x52)), s(tt)))) | → | top#(U11(s(U11(cons(proper(_x61), proper(_x62)), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), cons(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(_x41, U11(0, zeros)), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), ok(zeros))), ok(nil))) | top#(mark(U11(cons(U11(length(U12(_x81, _x82)), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(U12(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(nil)), s(s(_x81)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(s(proper(_x81))))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(length(_x91), _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(length(proper(_x91)), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(zeros, _x52)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(length(_x81))), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(length(proper(_x81)))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, U11(zeros, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(zeros), proper(_x72))), proper(_x22))) | top#(mark(U11(U12(cons(_x51, _x52), _x42), zeros))) | → | top#(U11(U12(cons(proper(_x51), proper(_x52)), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(U11(length(length(_x81)), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(length(proper(_x81))), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(length(length(_x71)), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, length(_x91))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), length(proper(_x91)))))), s(ok(tt)))) | top#(mark(U11(U12(length(_x51), _x42), zeros))) | → | top#(U11(U12(length(proper(_x51)), proper(_x42)), ok(zeros))) | |
top#(mark(U11(U12(tt, _x42), zeros))) | → | top#(U11(U12(ok(tt), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(_x41, U11(U12(_x91, _x92), _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(U12(proper(_x91), proper(_x92)), proper(_x72))), proper(_x22))) | |
top#(ok(cons(cons(_x41, _x42), _x22))) | → | top#(cons(cons(active(_x41), _x42), _x22)) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), nil))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(s(cons(length(length(U12(_x81, _x82))), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(U12(proper(_x81), proper(_x82)))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, tt)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(length(_x41), U11(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(_x41, U11(_x71, length(_x101))), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), length(proper(_x101)))), proper(_x22))) | |
top#(mark(U11(cons(nil, nil), _x22))) | → | top#(U11(cons(ok(nil), ok(nil)), proper(_x22))) | top#(mark(U11(s(cons(length(length(nil)), s(U11(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(U11(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, length(_x101)), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), length(proper(_x101))), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, U12(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), U12(proper(_x81), proper(_x82)))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(0)), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), length(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(U12(s(_x51), _x42), zeros))) | → | top#(U11(U12(s(proper(_x51)), proper(_x42)), ok(zeros))) | |
top#(mark(U11(cons(_x41, nil), nil))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(U12(_x71, _x72)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(U12(proper(_x71), proper(_x72))), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(nil)), nil)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(ok(nil), proper(_x52))), ok(s(tt)))) | top#(mark(U11(s(cons(_x51, _x52)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(U12(_x81, _x82), cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U12(proper(_x81), proper(_x82)), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(cons(length(length(0)), 0)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(U12(_x61, _x62))))) | → | top#(U11(s(proper(_x41)), s(U12(proper(_x61), proper(_x62))))) | top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), U11(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), U11(proper(_x51), proper(_x52)))) | |
top#(ok(U11(U11(tt, _x41), _x22))) | → | top#(U11(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(cons(_x41, U11(_x71, _x72)), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(tt))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(ok(tt)))), s(ok(tt)))) | top#(mark(U11(s(_x41), cons(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(cons(length(nil), nil), _x22))) | → | top#(U11(cons(length(ok(nil)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(length(_x51)), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(length(proper(_x51))), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(zeros))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(ok(zeros))))) | |
top#(mark(U11(s(_x41), s(s(U11(tt, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(tt), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(s(cons(length(length(s(_x81))), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(s(proper(_x81)))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(U12(_x101, _x102), _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(U12(proper(_x101), proper(_x102)), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(tt, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(tt), proper(_x82))))))) | |
top#(mark(U11(cons(length(tt), nil), nil))) | → | top#(U11(cons(length(ok(tt)), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(length(0)), tt)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(tt, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(ok(tt), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(cons(_x41, U11(0, _x72)), tt))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), ok(tt))) | |
top#(mark(U11(cons(_x41, U11(0, _x72)), cons(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), U11(ok(0), proper(_x72))), cons(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U11(length(length(_x81)), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(length(proper(_x81))), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(U11(_x81, _x82))), s(cons(cons(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(U11(proper(_x81), proper(_x82)))), s(cons(cons(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, U12(_x111, _x112)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), U12(proper(_x111), proper(_x112)))))))) | |
top#(mark(U11(s(_x41), s(s(U11(U12(_x81, _x82), cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(U12(proper(_x81), proper(_x82)), cons(proper(_x81), proper(_x82))))))) | top#(mark(U11(cons(U11(length(_x71), nil), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(nil)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), U11(0, _x72)), _x22))) | → | top#(U11(cons(length(proper(_x61)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, U12(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), U12(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(U11(length(tt), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(tt)), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(s(_x61), _x52)), s(tt)))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(cons(length(0), nil), nil))) | → | top#(U11(cons(length(ok(0)), ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(zeros, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(ok(zeros), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(nil), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(ok(nil)), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | top#(mark(U11(_x21, U12(cons(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(cons(proper(_x71), proper(_x72)), proper(_x52)))) | |
top#(mark(U11(length(nil), length(_x51)))) | → | top#(U11(length(ok(nil)), length(proper(_x51)))) | top#(mark(U11(length(nil), _x22))) | → | top#(U11(ok(length(nil)), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, tt)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), ok(tt))))), s(ok(tt)))) | top#(mark(U11(s(nil), s(tt)))) | → | top#(U11(s(ok(nil)), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(s(_x61))))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(s(nil), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(ok(nil)), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(ok(U12(tt, _x21))) | → | top#(mark(s(length(_x21)))) | |
top#(mark(U11(cons(U11(length(U11(_x81, _x82)), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(U11(proper(_x81), proper(_x82))), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(cons(U11(_x61, 0), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), ok(0)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(length(nil)), 0)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), ok(0))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(cons(_x41, _x42), tt))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(_x41, U11(_x71, zeros)), _x22))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), ok(zeros))), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), zeros))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), ok(zeros))) | |
top#(mark(U11(cons(length(length(_x71)), nil), _x22))) | → | top#(U11(cons(length(length(proper(_x71))), ok(nil)), proper(_x22))) | top#(mark(U11(cons(length(nil), nil), nil))) | → | top#(U11(cons(length(ok(nil)), ok(nil)), ok(nil))) | |
top#(ok(cons(U12(tt, _x41), _x22))) | → | top#(cons(mark(s(length(_x41))), _x22)) | top#(mark(U11(s(cons(s(_x61), _x52)), s(s(_x61))))) | → | top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, tt)), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), ok(tt))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(U12(_x131, _x132))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(U12(proper(_x131), proper(_x132))))))))) | |
top#(mark(U11(s(length(_x61)), _x22))) | → | top#(U11(s(length(proper(_x61))), proper(_x22))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(s(proper(_x61)), proper(_x52))), ok(s(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(zeros)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(ok(zeros)))))))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(s(proper(_x61))))) | |
top#(mark(U11(U12(_x41, U11(_x51, _x52)), zeros))) | → | top#(U11(U12(proper(_x41), U11(proper(_x51), proper(_x52))), ok(zeros))) | top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), length(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), length(proper(_x51)))) | |
top#(mark(U11(s(cons(tt, _x52)), s(s(_x61))))) | → | top#(U11(s(cons(ok(tt), proper(_x52))), s(s(proper(_x61))))) | top#(ok(cons(length(cons(_x42, _x41)), _x22))) | → | top#(cons(mark(U11(tt, _x41)), _x22)) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), U11(proper(_x61), proper(_x62)))), ok(s(tt)))) | top#(mark(U11(s(_x41), s(s(U11(zeros, cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(zeros), cons(proper(_x81), s(proper(_x111)))))))) | |
top#(mark(U11(cons(U11(_x61, zeros), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), ok(zeros)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(0, U11(0, cons(_x81, _x82))), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), cons(proper(_x81), proper(_x82)))), ok(nil))) | |
top#(mark(U11(_x21, U12(_x51, U11(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), U11(proper(_x81), proper(_x82))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, length(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), length(proper(_x111)))))))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), ok(zeros))), ok(s(tt)))) | top#(mark(U11(cons(U12(_x61, _x62), nil), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), ok(nil)), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(_x71)), zeros)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), ok(zeros))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(U11(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(U11(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(zeros), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(ok(zeros)), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(length(_x91), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(length(proper(_x91)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), nil))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), ok(nil))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U12(_x101, _x102), s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U12(proper(_x101), proper(_x102)), s(proper(_x111)))))))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, zeros)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(zeros))), proper(_x22))) | top#(mark(U11(cons(U11(tt, _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(ok(tt), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, tt)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), ok(tt)))))) | top#(mark(U11(_x21, cons(_x51, _x52)))) | → | top#(U11(proper(_x21), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(U12(_x61, _x62), zeros)), s(tt)))) | → | top#(U11(s(cons(U12(proper(_x61), proper(_x62)), ok(zeros))), s(ok(tt)))) | top#(mark(U11(length(_x41), nil))) | → | top#(U11(length(proper(_x41)), ok(nil))) | |
top#(mark(U11(cons(_x41, nil), U11(_x51, _x52)))) | → | top#(U11(cons(proper(_x41), ok(nil)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(length(0)), zeros)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), U12(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(0, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(0), s(proper(_x111)))))))) | |
top#(mark(U11(s(cons(length(length(U11(_x81, _x82))), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(U11(proper(_x81), proper(_x82)))), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(nil)), s(length(_x81)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(length(proper(_x81))))), s(ok(tt)))) | |
top#(mark(U11(s(U11(_x61, _x62)), _x22))) | → | top#(U11(s(U11(proper(_x61), proper(_x62))), proper(_x22))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, U12(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), U12(proper(_x81), proper(_x82)))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(length(_x141)))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(length(proper(_x141)))))))))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(ok(length(zeros))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(U12(_x81, _x82))), _x52)), s(tt)))) | → | top#(U11(s(cons(length(length(U12(proper(_x81), proper(_x82)))), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(length(proper(_x51))), ok(s(tt)))) | |
top#(mark(U11(cons(U11(length(nil), _x62), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(nil)), proper(_x62)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(_x51, length(_x61))), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(s(proper(_x61))))) | |
top#(mark(U11(s(zeros), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(ok(zeros)), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(cons(U11(length(U11(_x81, _x82)), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(U11(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, U12(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), U12(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(tt, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(tt), s(proper(_x111)))))))) | |
top#(mark(U11(cons(0, _x42), _x22))) | → | top#(U11(cons(ok(0), proper(_x42)), proper(_x22))) | top#(mark(U11(s(cons(length(length(nil)), s(zeros))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(ok(zeros)))), s(ok(tt)))) | |
top#(mark(U11(cons(_x41, _x42), 0))) | → | top#(U11(cons(proper(_x41), proper(_x42)), ok(0))) | top#(mark(U11(tt, _x22))) | → | top#(U11(ok(tt), proper(_x22))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), 0)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), ok(0))))), s(ok(tt)))) | top#(mark(U11(cons(zeros, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(ok(zeros), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(nil, U11(_x71, _x72)), _x22))) | → | top#(U11(cons(ok(nil), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(nil, cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(nil), cons(proper(_x81), s(proper(_x111)))))))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), U12(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(length(length(_x71)), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(proper(_x61)))), ok(s(tt)))) | |
top#(mark(U11(s(_x41), s(s(s(_x71)))))) | → | top#(U11(s(proper(_x41)), s(s(s(proper(_x71)))))) | top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(s(proper(_x61))))) | |
top#(mark(U11(s(cons(length(length(0)), nil)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(0))), ok(nil))), s(ok(tt)))) | top#(mark(U11(s(zeros), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(ok(zeros)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(_x41), s(s(U11(zeros, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(zeros), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(s(cons(length(zeros), length(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), length(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(cons(length(_x61), nil), s(_x51)))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), s(proper(_x51)))) | top#(mark(U11(cons(U11(_x61, tt), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), ok(tt)), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(length(U12(_x81, _x82)), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(U12(proper(_x81), proper(_x82))), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(U11(_x51, _x52)), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(length(s(_x51)), 0))) | → | top#(U11(length(s(proper(_x51))), ok(0))) | top#(mark(U11(s(cons(length(zeros), _x52)), s(tt)))) | → | top#(U11(s(cons(ok(length(zeros)), proper(_x52))), s(ok(tt)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(s(proper(_x51))), ok(s(tt)))) | top#(ok(cons(U12(_x41, _x42), _x22))) | → | top#(cons(U12(active(_x41), _x42), _x22)) | |
top#(mark(U11(_x21, U12(U11(_x71, _x72), _x52)))) | → | top#(U11(proper(_x21), U12(U11(proper(_x71), proper(_x72)), proper(_x52)))) | top#(mark(U11(cons(nil, U11(0, _x72)), nil))) | → | top#(U11(cons(ok(nil), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(s(cons(_x51, s(_x61))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(ok(tt)))) | top#(ok(U11(length(cons(_x42, _x41)), _x22))) | → | top#(U11(mark(U11(tt, _x41)), _x22)) | |
top#(mark(U11(cons(_x41, U11(_x71, _x72)), zeros))) | → | top#(U11(cons(proper(_x41), U11(proper(_x71), proper(_x72))), ok(zeros))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), tt))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), ok(tt))) | |
top#(mark(U11(cons(U11(length(cons(_x81, _x82)), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(cons(proper(_x81), proper(_x82))), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(nil, _x52)), s(s(_x61))))) | → | top#(U11(s(cons(ok(nil), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(U12(0, _x42), zeros))) | → | top#(U11(U12(ok(0), proper(_x42)), ok(zeros))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), s(_x51)))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), s(proper(_x51)))) | |
top#(mark(U11(cons(cons(_x61, _x62), U11(_x71, _x72)), _x22))) | → | top#(U11(cons(cons(proper(_x61), proper(_x62)), U11(proper(_x71), proper(_x72))), proper(_x22))) | top#(mark(U11(cons(U12(_x61, _x62), U11(_x71, _x72)), _x22))) | → | top#(U11(cons(U12(proper(_x61), proper(_x62)), U11(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(s(_x41), nil))) | → | top#(U11(s(proper(_x41)), ok(nil))) | top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(s(_x61))))) | → | top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(s(cons(_x51, tt)), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), ok(tt))), s(s(proper(_x61))))) | top#(mark(U11(s(_x41), s(nil)))) | → | top#(U11(s(proper(_x41)), s(ok(nil)))) | |
top#(mark(U11(s(U11(nil, _x52)), s(tt)))) | → | top#(U11(s(U11(ok(nil), proper(_x52))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(U12(_x81, _x82))), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(U12(proper(_x81), proper(_x82)))), s(proper(_x61)))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), nil)), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), ok(nil))), s(ok(tt)))) | top#(mark(U11(cons(length(_x61), nil), 0))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), ok(0))) | |
top#(mark(U11(cons(U11(s(_x71), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(s(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U11(_x101, _x102), s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U11(proper(_x101), proper(_x102)), s(proper(_x111)))))))) | |
top#(mark(U11(length(zeros), _x22))) | → | top#(U11(length(ok(zeros)), proper(_x22))) | top#(mark(U11(cons(U11(_x61, U12(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), U12(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(_x41, nil), zeros))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(zeros))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(U11(_x101, _x102), s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(U11(proper(_x101), proper(_x102)), s(s(proper(_x131))))))))) | |
top#(mark(U11(nil, zeros))) | → | top#(U11(ok(nil), ok(zeros))) | top#(mark(U11(s(cons(length(zeros), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), s(proper(_x61)))), s(ok(tt)))) | |
top#(ok(cons(U11(tt, _x41), _x22))) | → | top#(cons(mark(U12(tt, _x41)), _x22)) | top#(mark(U11(_x21, nil))) | → | top#(U11(proper(_x21), ok(nil))) | |
top#(mark(U11(cons(U11(length(zeros), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(zeros)), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(cons(_x51, nil)), s(tt)))) | → | top#(U11(s(cons(proper(_x51), ok(nil))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), U11(_x51, _x52)))) | → | top#(U11(s(proper(_x41)), U11(proper(_x51), proper(_x52)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), cons(_x51, _x52)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(cons(s(_x61), _x42), _x22))) | → | top#(U11(cons(s(proper(_x61)), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), nil))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), ok(nil))) | |
top#(mark(U11(_x21, U12(0, _x52)))) | → | top#(U11(proper(_x21), U12(ok(0), proper(_x52)))) | top#(mark(U11(zeros, tt))) | → | top#(U11(ok(zeros), ok(tt))) | |
top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(length(U12(_x51, _x52)), nil), nil))) | → | top#(U11(cons(length(U12(proper(_x51), proper(_x52))), ok(nil)), ok(nil))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), tt))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), ok(tt))) | top#(mark(U11(cons(0, U11(0, _x72)), _x22))) | → | top#(U11(cons(ok(0), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(nil, U12(_x51, _x52)))) | → | top#(U11(ok(nil), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(s(_x61))))) | → | top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(s(proper(_x61))))) | |
top#(mark(U11(s(cons(zeros, zeros)), s(tt)))) | → | top#(U11(s(cons(ok(zeros), ok(zeros))), s(ok(tt)))) | top#(mark(U11(cons(length(cons(_x71, _x72)), nil), _x22))) | → | top#(U11(cons(length(cons(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | |
top#(mark(U11(cons(length(_x61), nil), tt))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), ok(tt))) | top#(mark(U11(U12(_x41, _x42), tt))) | → | top#(U11(U12(proper(_x41), proper(_x42)), ok(tt))) | |
top#(mark(U11(cons(nil, _x42), _x22))) | → | top#(U11(cons(ok(nil), proper(_x42)), proper(_x22))) | top#(mark(U11(cons(tt, U11(0, _x72)), _x22))) | → | top#(U11(cons(ok(tt), U11(ok(0), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(U11(_x61, U11(_x71, _x72)), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(proper(_x61), U11(proper(_x71), proper(_x72))), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), U12(proper(_x61), proper(_x62)))), ok(s(tt)))) | |
top#(mark(U11(cons(_x41, U11(0, s(_x81))), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), s(proper(_x81)))), ok(nil))) | top#(mark(U11(cons(_x41, U11(0, U11(_x81, _x82))), nil))) | → | top#(U11(cons(proper(_x41), U11(ok(0), U11(proper(_x81), proper(_x82)))), ok(nil))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, s(_x81))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), s(proper(_x81))))))) | top#(mark(U11(s(cons(length(length(U11(_x81, _x82))), s(cons(_x81, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(U11(proper(_x81), proper(_x82)))), s(cons(proper(_x81), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(zeros), _x62), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(ok(zeros)), proper(_x62)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(length(_x81), cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(length(proper(_x81)), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(0), s(tt)))) | → | top#(U11(s(ok(0)), s(ok(tt)))) | top#(ok(cons(s(_x41), _x22))) | → | top#(cons(s(active(_x41)), _x22)) | |
top#(mark(U11(s(cons(length(length(cons(_x81, _x82))), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(cons(proper(_x81), proper(_x82)))), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(nil, tt))) | → | top#(U11(ok(nil), ok(tt))) | |
top#(mark(U11(s(_x41), s(s(U11(s(_x81), cons(_x81, s(_x111)))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(s(proper(_x81)), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(nil))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(ok(nil))))))))) | |
top#(mark(U11(s(cons(length(length(length(_x81))), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(length(proper(_x81)))), s(proper(_x61)))), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(tt, cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(tt), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(tt, U11(0, _x72)), nil))) | → | top#(U11(cons(ok(tt), U11(ok(0), proper(_x72))), ok(nil))) | top#(mark(U11(cons(_x41, cons(_x71, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), cons(proper(_x71), proper(_x72))), proper(_x22))) | |
top#(mark(U11(cons(_x41, U11(0, s(_x101))), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(0), s(proper(_x101)))), proper(_x22))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), ok(0))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, U11(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), U11(proper(_x91), proper(_x92)))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, tt)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(tt))), proper(_x22))) | |
top#(mark(U11(s(cons(length(zeros), nil)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(nil))), s(ok(tt)))) | top#(mark(U11(length(s(_x61)), _x22))) | → | top#(U11(length(s(proper(_x61))), proper(_x22))) | |
top#(mark(U11(cons(length(U11(_x71, _x72)), nil), _x22))) | → | top#(U11(cons(length(U11(proper(_x71), proper(_x72))), ok(nil)), proper(_x22))) | top#(mark(U11(s(zeros), _x22))) | → | top#(U11(s(ok(zeros)), proper(_x22))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), zeros))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), ok(zeros))) | top#(mark(U11(cons(length(_x61), nil), U12(_x51, _x52)))) | → | top#(U11(cons(length(proper(_x61)), ok(nil)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), length(proper(_x61)))), ok(s(tt)))) | top#(mark(U11(s(_x41), s(s(U11(0, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(0), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(s(zeros), s(tt)))) | → | top#(U11(s(ok(zeros)), s(ok(tt)))) | top#(mark(U11(s(_x41), s(s(U11(0, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(0), proper(_x72)))))) | |
top#(mark(U11(s(tt), _x22))) | → | top#(U11(s(ok(tt)), proper(_x22))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), U11(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), U11(proper(_x91), proper(_x92)))))), s(ok(tt)))) | |
top#(mark(U11(_x21, U12(_x51, cons(_x81, _x82))))) | → | top#(U11(proper(_x21), U12(proper(_x51), cons(proper(_x81), proper(_x82))))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(0, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(ok(0), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(length(nil), nil))) | → | top#(U11(length(ok(nil)), ok(nil))) | top#(mark(U11(s(cons(length(zeros), tt)), s(tt)))) | → | top#(U11(s(cons(length(ok(zeros)), ok(tt))), s(ok(tt)))) | |
top#(mark(U11(s(s(_x51)), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(s(proper(_x51))), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(tt), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(ok(tt)), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, _x72)), 0))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), proper(_x72))), ok(0))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, s(s(0))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(ok(0))))))))) | |
top#(mark(U11(s(_x41), s(s(U11(zeros, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(zeros), proper(_x72)))))) | top#(mark(U11(s(cons(length(length(nil)), zeros)), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(_x21, length(_x51)))) | → | top#(U11(proper(_x21), length(proper(_x51)))) | top#(mark(U11(cons(U11(_x51, _x52), U11(0, _x72)), nil))) | → | top#(U11(cons(U11(proper(_x51), proper(_x52)), U11(ok(0), proper(_x72))), ok(nil))) | |
top#(mark(U11(U12(_x41, 0), zeros))) | → | top#(U11(U12(proper(_x41), ok(0)), ok(zeros))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, 0)), 0))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(0))), ok(0))) | |
top#(mark(U11(s(_x41), s(length(_x61))))) | → | top#(U11(s(proper(_x41)), s(length(proper(_x61))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(0), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(ok(0)), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(proper(_x51), ok(nil))), ok(s(tt)))) | |
top#(mark(0)) | → | top#(ok(0)) | top#(mark(U11(0, U12(_x51, _x52)))) | → | top#(U11(ok(0), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(cons(U11(length(_x71), U11(_x71, _x72)), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), U11(proper(_x71), proper(_x72))), U11(ok(0), ok(0))), proper(_x22))) | |
top#(mark(U11(s(U11(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(U11(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(cons(U11(_x61, _x62), U11(0, nil)), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), ok(nil))), proper(_x22))) | |
top#(mark(U11(s(tt), s(s(U11(_x71, _x72)))))) | → | top#(U11(s(ok(tt)), s(s(U11(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(_x41), s(s(U11(length(_x81), _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(length(proper(_x81)), proper(_x72)))))) | |
top#(mark(U11(cons(U11(length(_x71), s(_x71)), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), s(proper(_x71))), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(_x21, U12(_x51, s(_x81))))) | → | top#(U11(proper(_x21), U12(proper(_x51), s(proper(_x81))))) | |
top#(mark(U11(cons(U11(_x61, _x62), _x42), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), proper(_x42)), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(0, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(ok(0), proper(_x82))))))) | |
top#(mark(U11(nil, _x22))) | → | top#(U11(ok(nil), proper(_x22))) | top#(mark(U11(0, _x22))) | → | top#(U11(ok(0), proper(_x22))) | |
top#(mark(U11(s(U12(_x51, _x52)), s(s(U11(_x71, cons(_x81, s(_x111)))))))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), s(proper(_x111)))))))) | top#(mark(U11(s(length(_x51)), s(s(_x61))))) | → | top#(U11(s(length(proper(_x51))), s(s(proper(_x61))))) | |
top#(mark(U11(cons(_x41, U11(nil, _x72)), _x22))) | → | top#(U11(cons(proper(_x41), U11(ok(nil), proper(_x72))), proper(_x22))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(zeros, _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(ok(zeros), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(_x71), 0), U11(0, _x72)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), proper(_x72))), proper(_x22))) | top#(mark(U11(s(_x41), s(s(U11(_x71, cons(_x81, tt))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), cons(proper(_x81), ok(tt))))))) | |
top#(mark(U11(s(_x41), s(s(U12(_x71, _x72)))))) | → | top#(U11(s(proper(_x41)), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, _x72)), s(_x51)))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), proper(_x72))), s(proper(_x51)))) | |
top#(mark(U11(s(zeros), s(s(_x61))))) | → | top#(U11(s(ok(zeros)), s(s(proper(_x61))))) | top#(mark(U11(s(_x41), zeros))) | → | top#(U11(s(proper(_x41)), ok(zeros))) | |
top#(mark(U11(s(cons(_x51, _x52)), s(s(tt))))) | → | top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(ok(tt))))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(_x91, _x92), zeros)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(proper(_x91), proper(_x92)), ok(zeros))))), s(ok(tt)))) | |
top#(mark(U11(s(_x41), s(s(U11(_x71, nil)))))) | → | top#(U11(s(proper(_x41)), s(s(U11(proper(_x71), ok(nil)))))) | top#(mark(U11(length(_x41), U12(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(0), s(s(U11(_x71, cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(ok(0)), s(s(U11(proper(_x71), cons(proper(_x81), s(s(proper(_x131))))))))) | top#(mark(U11(cons(U11(length(_x71), 0), U11(0, 0)), nil))) | → | top#(U11(cons(U11(length(proper(_x71)), ok(0)), U11(ok(0), ok(0))), ok(nil))) | |
top#(mark(U11(U12(_x41, cons(_x51, _x52)), zeros))) | → | top#(U11(U12(proper(_x41), cons(proper(_x51), proper(_x52))), ok(zeros))) | top#(mark(U11(s(cons(length(length(zeros)), s(cons(U11(_x91, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(U11(proper(_x91), proper(_x92)), proper(_x82))))), s(ok(tt)))) | |
top#(mark(U11(s(cons(length(length(_x71)), s(cons(cons(nil, _x92), _x82)))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(cons(ok(nil), proper(_x92)), proper(_x82))))), s(ok(tt)))) | top#(mark(U11(s(U11(_x51, zeros)), s(tt)))) | → | top#(U11(s(U11(proper(_x51), ok(zeros))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(length(0), 0), U11(0, 0)), _x22))) | → | top#(U11(cons(U11(length(ok(0)), ok(0)), U11(ok(0), ok(0))), proper(_x22))) | top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(ok(0)), ok(s(tt)))) | |
top#(mark(U11(cons(_x41, nil), 0))) | → | top#(U11(cons(proper(_x41), ok(nil)), ok(0))) | top#(mark(U11(length(U11(_x61, _x62)), _x22))) | → | top#(U11(length(U11(proper(_x61), proper(_x62))), proper(_x22))) | |
top#(mark(U11(s(_x41), s(s(U11(nil, cons(_x81, _x82))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(ok(nil), cons(proper(_x81), proper(_x82))))))) | top#(mark(length(_x21))) | → | top#(length(proper(_x21))) | |
top#(mark(U11(U11(_x41, _x42), U12(_x51, _x52)))) | → | top#(U11(U11(proper(_x41), proper(_x42)), U12(proper(_x51), proper(_x52)))) | top#(mark(U11(s(U12(_x51, _x52)), s(s(U11(_x71, cons(_x81, _x82))))))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(s(U11(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(mark(U11(s(cons(length(_x61), _x52)), s(s(_x61))))) | → | top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(s(proper(_x61))))) | top#(mark(U11(length(_x41), cons(_x51, _x52)))) | → | top#(U11(length(proper(_x41)), cons(proper(_x51), proper(_x52)))) | |
top#(mark(U11(length(tt), 0))) | → | top#(U11(length(ok(tt)), ok(0))) | top#(mark(U11(zeros, U12(_x51, _x52)))) | → | top#(U11(ok(zeros), U12(proper(_x51), proper(_x52)))) | |
top#(mark(U11(s(tt), s(tt)))) | → | top#(U11(s(U12(ok(zeros), proper(_x52))), ok(s(tt)))) | top#(ok(cons(zeros, _x22))) | → | top#(cons(mark(cons(0, zeros)), _x22)) | |
top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(s(cons(length(length(nil)), s(_x61))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(nil))), s(proper(_x61)))), ok(s(tt)))) | |
top#(mark(U11(s(cons(length(length(zeros)), s(cons(_x81, nil)))), s(tt)))) | → | top#(U11(s(cons(length(length(ok(zeros))), s(cons(proper(_x81), ok(nil))))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, s(_x81))), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), s(proper(_x81)))), proper(_x22))) | |
top#(mark(U11(cons(0, U11(0, U12(_x81, _x82))), nil))) | → | top#(U11(cons(ok(0), U11(ok(0), U12(proper(_x81), proper(_x82)))), ok(nil))) | top#(mark(U11(s(U12(_x51, _x52)), s(s(_x61))))) | → | top#(U11(s(U12(proper(_x51), proper(_x52))), s(s(proper(_x61))))) | |
top#(mark(U11(s(_x41), s(s(length(_x71)))))) | → | top#(U11(s(proper(_x41)), s(s(length(proper(_x71)))))) | top#(mark(U11(s(_x41), s(s(U11(cons(_x81, _x82), cons(_x81, s(s(_x131))))))))) | → | top#(U11(s(proper(_x41)), s(s(U11(cons(proper(_x81), proper(_x82)), cons(proper(_x81), s(s(proper(_x131))))))))) | |
top#(mark(U11(cons(length(zeros), nil), _x22))) | → | top#(U11(cons(length(ok(zeros)), ok(nil)), proper(_x22))) | top#(mark(U11(s(cons(length(length(_x71)), s(cons(_x81, U12(_x91, _x92))))), s(tt)))) | → | top#(U11(s(cons(length(length(proper(_x71))), s(cons(proper(_x81), U12(proper(_x91), proper(_x92)))))), s(ok(tt)))) | |
top#(mark(U11(cons(U11(_x61, _x62), U11(0, U11(_x81, _x82))), _x22))) | → | top#(U11(cons(U11(proper(_x61), proper(_x62)), U11(ok(0), U11(proper(_x81), proper(_x82)))), proper(_x22))) | top#(mark(U11(cons(_x41, _x42), length(_x51)))) | → | top#(U11(cons(proper(_x41), proper(_x42)), length(proper(_x51)))) | |
top#(mark(U11(s(cons(length(_x61), cons(_x61, _x62))), s(tt)))) | → | top#(U11(s(cons(length(proper(_x61)), cons(proper(_x61), proper(_x62)))), s(ok(tt)))) | top#(mark(U11(cons(U11(length(_x71), _x62), U11(0, nil)), _x22))) | → | top#(U11(cons(U11(length(proper(_x71)), proper(_x62)), U11(ok(0), ok(nil))), proper(_x22))) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, top, cons, nil
Relevant Terms | Irrelevant Terms |
---|---|
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(U12(proper(_x81), proper(_x82)), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(zeros)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(length(proper(_x81)), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), ok(zeros))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(ok(0), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), U11(proper(_x81), proper(_x82))))))) | |
top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(ok(zeros), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(cons(proper(_x81), proper(_x82)), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), s(proper(_x81))))))) | |
top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(U11(proper(_x81), proper(_x82)), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(nil), proper(_x72)))))) | |
top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(tt)))))) | |
top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(0), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), cons(proper(_x81), proper(_x82))))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(s(proper(_x81)), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(tt), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), U12(proper(_x81), proper(_x82))))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), length(proper(_x81))))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(0)))))) | |
top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(ok(nil), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(zeros), proper(_x72)))))) | |
top#(U11(s(cons(ok(tt), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(nil)))))) | |
top#(U11(s(cons(proper(_x51), ok(0))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), ok(tt))), s(s(U12(proper(_x71), proper(_x72)))))) | |
top#(U11(s(cons(proper(_x51), ok(nil))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(nil, _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(ok(nil), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, nil)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), ok(nil))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(U12(_x61, _x62), _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(U12(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, zeros)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), ok(zeros))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, s(_x81))))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), s(proper(_x81))))))) | top#(mark(U11(s(cons(tt, _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(ok(tt), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(length(_x81), _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(length(proper(_x81)), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(U12(_x81, _x82), _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(U12(proper(_x81), proper(_x82)), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, nil)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(nil)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(U11(_x81, _x82), _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(U11(proper(_x81), proper(_x82)), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, U12(_x81, _x82))))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), U12(proper(_x81), proper(_x82))))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(0, _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(0), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, U11(_x81, _x82))))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), U11(proper(_x81), proper(_x82))))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(s(_x81), _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(s(proper(_x81)), proper(_x72)))))) |
top#(mark(U11(s(cons(zeros, _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(ok(zeros), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, cons(_x61, _x62))), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), cons(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(length(_x61), _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(length(proper(_x61)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(cons(_x61, _x62), _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(cons(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, 0)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), ok(0))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, U12(_x61, _x62))), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), U12(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(cons(_x81, _x82), _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(cons(proper(_x81), proper(_x82)), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(zeros, _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(zeros), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, length(_x61))), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), length(proper(_x61)))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, zeros)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(zeros)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, cons(_x81, _x82))))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), cons(proper(_x81), proper(_x82))))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(nil, _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(nil), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, length(_x81))))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), length(proper(_x81))))))) | top#(mark(U11(s(cons(_x51, s(_x61))), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), s(proper(_x61)))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(s(_x61), _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(s(proper(_x61)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, tt)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(tt)))))) |
top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(_x71, 0)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(proper(_x71), ok(0)))))) | top#(mark(U11(s(cons(0, _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(ok(0), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(U11(_x61, _x62), _x52)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(U11(proper(_x61), proper(_x62)), proper(_x52))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, U11(_x61, _x62))), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), U11(proper(_x61), proper(_x62)))), s(s(U12(proper(_x71), proper(_x72)))))) |
top#(mark(U11(s(cons(_x51, tt)), s(s(U12(_x71, _x72)))))) → top#(U11(s(cons(proper(_x51), ok(tt))), s(s(U12(proper(_x71), proper(_x72)))))) | top#(mark(U11(s(cons(_x51, _x52)), s(s(U12(tt, _x72)))))) → top#(U11(s(cons(proper(_x51), proper(_x52))), s(s(U12(ok(tt), proper(_x72)))))) |
s#(mark(X)) | → | s#(X) | s#(ok(X)) | → | s#(X) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
s#(mark(X)) | → | s#(X) | s#(ok(X)) | → | s#(X) |
length#(mark(X)) | → | length#(X) | length#(ok(X)) | → | length#(X) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
length#(mark(X)) | → | length#(X) | length#(ok(X)) | → | length#(X) |
cons#(mark(X1), X2) | → | cons#(X1, X2) | cons#(ok(X1), ok(X2)) | → | cons#(X1, X2) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
cons#(mark(X1), X2) | → | cons#(X1, X2) | cons#(ok(X1), ok(X2)) | → | cons#(X1, X2) |
active#(U12(X1, X2)) | → | active#(X1) | active#(s(X)) | → | active#(X) | |
active#(length(X)) | → | active#(X) | active#(U11(X1, X2)) | → | active#(X1) | |
active#(cons(X1, X2)) | → | active#(X1) |
active(zeros) | → | mark(cons(0, zeros)) | active(U11(tt, L)) | → | mark(U12(tt, L)) | |
active(U12(tt, L)) | → | mark(s(length(L))) | active(length(nil)) | → | mark(0) | |
active(length(cons(N, L))) | → | mark(U11(tt, L)) | active(cons(X1, X2)) | → | cons(active(X1), X2) | |
active(U11(X1, X2)) | → | U11(active(X1), X2) | active(U12(X1, X2)) | → | U12(active(X1), X2) | |
active(s(X)) | → | s(active(X)) | active(length(X)) | → | length(active(X)) | |
cons(mark(X1), X2) | → | mark(cons(X1, X2)) | U11(mark(X1), X2) | → | mark(U11(X1, X2)) | |
U12(mark(X1), X2) | → | mark(U12(X1, X2)) | s(mark(X)) | → | mark(s(X)) | |
length(mark(X)) | → | mark(length(X)) | proper(zeros) | → | ok(zeros) | |
proper(cons(X1, X2)) | → | cons(proper(X1), proper(X2)) | proper(0) | → | ok(0) | |
proper(U11(X1, X2)) | → | U11(proper(X1), proper(X2)) | proper(tt) | → | ok(tt) | |
proper(U12(X1, X2)) | → | U12(proper(X1), proper(X2)) | proper(s(X)) | → | s(proper(X)) | |
proper(length(X)) | → | length(proper(X)) | proper(nil) | → | ok(nil) | |
cons(ok(X1), ok(X2)) | → | ok(cons(X1, X2)) | U11(ok(X1), ok(X2)) | → | ok(U11(X1, X2)) | |
U12(ok(X1), ok(X2)) | → | ok(U12(X1, X2)) | s(ok(X)) | → | ok(s(X)) | |
length(ok(X)) | → | ok(length(X)) | top(mark(X)) | → | top(proper(X)) | |
top(ok(X)) | → | top(active(X)) |
Termination of terms over the following signature is verified: mark, 0, s, zeros, tt, length, active, U11, U12, ok, proper, nil, top, cons
The following projection was used:
Thus, the following dependency pairs are removed:
active#(U12(X1, X2)) | → | active#(X1) | active#(s(X)) | → | active#(X) | |
active#(length(X)) | → | active#(X) | active#(U11(X1, X2)) | → | active#(X1) | |
active#(cons(X1, X2)) | → | active#(X1) |