TIMEOUT

The TRS could not be proven terminating. The proof attempt took 60045 ms.

The following DP Processors were used


Problem 1 was processed with processor ForwardNarrowing (6ms).
 | – Problem 2 was processed with processor ForwardNarrowing (4ms).
 |    | – Problem 3 was processed with processor ForwardNarrowing (6ms).
 |    |    | – Problem 4 was processed with processor ForwardNarrowing (8ms).
 |    |    |    | – Problem 5 was processed with processor ForwardNarrowing (10ms).
 |    |    |    |    | – Problem 6 was processed with processor ForwardNarrowing (17ms).
 |    |    |    |    |    | – Problem 7 was processed with processor ForwardNarrowing (10ms).
 |    |    |    |    |    |    | – Problem 8 was processed with processor ForwardNarrowing (21ms).
 |    |    |    |    |    |    |    | – Problem 9 was processed with processor ForwardNarrowing (21ms).
 |    |    |    |    |    |    |    |    | – Problem 10 was processed with processor ForwardNarrowing (24ms).
 |    |    |    |    |    |    |    |    |    | – Problem 11 was processed with processor ForwardNarrowing (20ms).
 |    |    |    |    |    |    |    |    |    |    | – Problem 12 was processed with processor ForwardNarrowing (30ms).
 |    |    |    |    |    |    |    |    |    |    |    | – Problem 13 was processed with processor ForwardNarrowing (82ms).
 |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 14 was processed with processor ForwardNarrowing (36ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 15 was processed with processor ForwardNarrowing (48ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 16 was processed with processor ForwardNarrowing (50ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 17 was processed with processor ForwardNarrowing (51ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 18 was processed with processor ForwardNarrowing (54ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 19 was processed with processor ForwardNarrowing (53ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 20 was processed with processor ForwardNarrowing (129ms).
 |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    | – Problem 21 remains open; application of the following processors failed [ForwardNarrowing (57ms), ForwardNarrowing (70ms), ForwardNarrowing (195ms), ForwardNarrowing (136ms), ForwardNarrowing (68ms), ForwardNarrowing (175ms), ForwardNarrowing (205ms), ForwardNarrowing (81ms), ForwardNarrowing (74ms), ForwardNarrowing (142ms), ForwardNarrowing (315ms), ForwardNarrowing (176ms), ForwardNarrowing (114ms), ForwardNarrowing (timeout)].

The following open problems remain:



Open Dependency Pair Problem 1

Dependency Pairs

a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(from(X))a__from#(mark(X))mark#(sel(X1, X2))a__sel#(mark(X1), mark(X2))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, X2))mark#(X2)
mark#(from(X))mark#(X)a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(cons(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons


Problem 1: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(from(X))a__from#(mark(X))mark#(sel(X1, X2))a__sel#(mark(X1), mark(X2))
a__sel#(s(X), cons(Y, Z))mark#(Z)a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(from(X))mark#(X)mark#(sel(X1, X2))mark#(X2)
mark#(cons(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(X1, X2)) → a__sel#(mark(X1), mark(X2)) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(s(mark(_x21)), mark(X2)) 
a__sel#(cons(mark(_x21), _x22), mark(X2)) 
a__sel#(mark(X1), a__from(mark(_x31))) 
a__sel#(mark(X1), cons(mark(_x31), _x32)) 
a__sel#(mark(X1), 0) 
a__sel#(mark(X1), s(mark(_x31))) 
a__sel#(a__from(mark(_x21)), mark(X2)) 
a__sel#(0, mark(X2)) 
a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2)) 
Thus, the rule mark#(sel(X1, X2)) → a__sel#(mark(X1), mark(X2)) is replaced by the following rules:
mark#(sel(X1, from(_x31))) → a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(cons(_x21, _x22), X2)) → a__sel#(cons(mark(_x21), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), X2)) → a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(from(_x21), X2)) → a__sel#(a__from(mark(_x21)), mark(X2))
mark#(sel(X1, s(_x31))) → a__sel#(mark(X1), s(mark(_x31)))mark#(sel(X1, 0)) → a__sel#(mark(X1), 0)
mark#(sel(X1, sel(_x31, _x32))) → a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(X1, cons(_x31, _x32))) → a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(0, X2)) → a__sel#(0, mark(X2))mark#(sel(s(_x21), X2)) → a__sel#(s(mark(_x21)), mark(X2))

Problem 2: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(cons(_x21, _x22), X2))a__sel#(cons(mark(_x21), _x22), mark(X2))mark#(from(X))a__from#(mark(X))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(X1, s(_x31)))a__sel#(mark(X1), s(mark(_x31)))mark#(from(X))mark#(X)
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(cons(X1, X2))mark#(X1)
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(X1, X2))mark#(X2)mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(cons(_x21, _x22), X2)) → a__sel#(cons(mark(_x21), _x22), mark(X2)) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(cons(mark(_x21), _x22), s(mark(_x31))) 
a__sel#(cons(mark(_x21), _x22), 0) 
a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32)) 
a__sel#(cons(0, _x22), mark(X2)) 
a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2)) 
a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2)) 
a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32))) 
a__sel#(cons(s(mark(_x41)), _x22), mark(X2)) 
a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2)) 
a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31))) 
Thus, the rule mark#(sel(cons(_x21, _x22), X2)) → a__sel#(cons(mark(_x21), _x22), mark(X2)) is replaced by the following rules:
mark#(sel(cons(0, _x22), X2)) → a__sel#(cons(0, _x22), mark(X2))mark#(sel(cons(_x21, _x22), from(_x31))) → a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(cons(sel(_x41, _x42), _x22), X2)) → a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(cons(s(_x41), _x22), X2)) → a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32))) → a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(cons(cons(_x41, _x42), _x22), X2)) → a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32))) → a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(cons(from(_x41), _x22), X2)) → a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31))) → a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0)) → a__sel#(cons(mark(_x21), _x22), 0)

Problem 3: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(from(X))a__from#(mark(X))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(X1, s(_x31)))a__sel#(mark(X1), s(mark(_x31)))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(X1, X2))mark#(X2)mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, X2))mark#(X1)mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(from(X))mark#(X)mark#(cons(X1, X2))mark#(X1)
mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(X1, s(_x31))) → a__sel#(mark(X1), s(mark(_x31))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(0, s(mark(_x31))) 
a__sel#(cons(mark(_x21), _x22), s(mark(_x31))) 
a__sel#(a__from(mark(_x21)), s(mark(_x31))) 
a__sel#(s(mark(_x21)), s(mark(_x31))) 
a__sel#(mark(X1), s(s(mark(_x51)))) 
a__sel#(mark(X1), s(a__from(mark(_x51)))) 
a__sel#(mark(X1), s(0)) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(cons(mark(_x51), _x52))) 
Thus, the rule mark#(sel(X1, s(_x31))) → a__sel#(mark(X1), s(mark(_x31))) is replaced by the following rules:
mark#(sel(X1, s(sel(_x51, _x52)))) → a__sel#(mark(X1), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(_x31))) → a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(X1, s(0))) → a__sel#(mark(X1), s(0))mark#(sel(X1, s(cons(_x51, _x52)))) → a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(X1, s(s(_x51)))) → a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(s(_x21), s(_x31))) → a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), s(_x31))) → a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(0, s(_x31))) → a__sel#(0, s(mark(_x31)))
mark#(sel(sel(_x21, _x22), s(_x31))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(from(_x51)))) → a__sel#(mark(X1), s(a__from(mark(_x51))))

Problem 4: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(a__sel(mark(_x51), mark(_x52))))mark#(from(X))a__from#(mark(X))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(X1, X2))mark#(X2)mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, X2))mark#(X1)mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(from(X))mark#(X)
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(cons(X1, X2))mark#(X1)
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(X1, s(sel(_x51, _x52)))) → a__sel#(mark(X1), s(a__sel(mark(_x51), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52)))) 
a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61))))) 
a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(0, mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52)))) 
a__sel#(0, s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61))))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(mark(_x51), 0))) 
Thus, the rule mark#(sel(X1, s(sel(_x51, _x52)))) → a__sel#(mark(X1), s(a__sel(mark(_x51), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(0, s(sel(_x51, _x52)))) → a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52)))) → a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52)))) → a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52)))) → a__sel#(mark(X1), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(_x51, _x52)))) → a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52)))) → a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62))))) → a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, s(sel(_x51, 0)))) → a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(from(_x21), s(sel(_x51, _x52)))) → a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61))))) → a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62))))) → a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), s(sel(_x51, _x52)))) → a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52)))) → a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61))))) → a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))

Problem 5: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(from(X))a__from#(mark(X))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(s(X))mark#(X)
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, X2))mark#(X1)mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(from(X))mark#(X)
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(cons(X1, X2))mark#(X1)
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))a__sel#(0, cons(X, Y))mark#(X)
a__from#(X)mark#(X)mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(X1, X2))mark#(X2)
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61))))) 
a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61))))) 
a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0))) 
Thus, the rule mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52)))) → a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52)))) → a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))

Problem 6: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(from(X))a__from#(mark(X))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(s(X))mark#(X)mark#(sel(X1, X2))mark#(X1)
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(from(X))mark#(X)a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))a__sel#(s(X), cons(Y, Z))mark#(X)

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61))))) 
a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0))) 
a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61))))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62))))) 
Thus, the rule mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61))))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))

Problem 7: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(from(X))a__from#(mark(X))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(from(X))mark#(X)mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(X1, s(sel(0, _x52)))) → a__sel#(mark(X1), s(a__sel(0, mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61))))) 
a__sel#(mark(X1), s(sel(0, mark(_x52)))) 
a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62))))) 
a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(0, 0))) 
a__sel#(0, s(a__sel(0, mark(_x52)))) 
a__sel#(mark(X1), s(a__sel(0, s(mark(_x61))))) 
a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62)))) 
a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52)))) 
Thus, the rule mark#(sel(X1, s(sel(0, _x52)))) → a__sel#(mark(X1), s(a__sel(0, mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(_x21, _x22), s(sel(0, _x52)))) → a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, _x52)))) → a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52)))) → a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(0, s(sel(0, _x52)))) → a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, cons(_x61, _x62))))) → a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(0, s(_x61))))) → a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(X1, s(sel(0, 0)))) → a__sel#(mark(X1), s(a__sel(0, 0)))mark#(sel(from(_x21), s(sel(0, _x52)))) → a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61))))) → a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(X1, s(sel(0, sel(_x61, _x62))))) → a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(_x21, _x22), s(sel(0, _x52)))) → a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))

Problem 8: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(from(X))a__from#(mark(X))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, X2))mark#(X1)mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(from(X))mark#(X)mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61))))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))

Problem 9: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(X1, X2))mark#(X1)
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(from(X))mark#(X)
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(X1, X2))mark#(X2)mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52)))) 
a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42))))) → a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52)))) → a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52)))) → a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))

Problem 10: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(X1, X2))mark#(X1)
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(cons(X1, X2))mark#(X1)mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(from(X))mark#(X)a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))a__sel#(0, cons(X, Y))mark#(X)
a__from#(X)mark#(X)mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
Thus, the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) is replaced by the following rules:
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62))))) → a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))

Problem 11: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(from(X))a__from#(mark(X))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(from(X))mark#(X)
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))mark#(sel(X1, X2))mark#(X2)
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62)))) 
a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) 
Thus, the rule mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62)))) is replaced by the following rules:
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))

Problem 12: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(X1, X2))mark#(X2)mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(cons(X1, X2))mark#(X1)mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(from(X))mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))a__sel#(0, cons(X, Y))mark#(X)
a__from#(X)mark#(X)mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61))))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))

Problem 13: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(from(X))a__from#(mark(X))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(from(X))mark#(X)mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61))))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))

Problem 14: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(s(X))mark#(X)mark#(sel(X1, X2))mark#(X1)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, X2))mark#(X2)mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(from(X))mark#(X)
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))a__from#(X)mark#(X)
a__sel#(0, cons(X, Y))mark#(X)mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72)))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))

Problem 15: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, X2))mark#(X2)mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(from(X))a__from#(mark(X))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(cons(X1, X2))mark#(X1)mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(from(X))mark#(X)mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102))))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Problem 16: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(s(X))mark#(X)mark#(sel(X1, X2))mark#(X1)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, X2))mark#(X2)mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(from(X))a__from#(mark(X))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(from(X))mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(cons(_x111, _x112), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, s(_x111)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(s(_x111), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, cons(_x111, _x112)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, 0))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), a__sel(0, a__sel(mark(_x101), mark(_x102))))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(from(_x111), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(0, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), mark(_x42))))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, sel(_x111, _x112)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, from(_x111)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(sel(_x111, _x112), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Problem 17: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(s(X))mark#(X)
mark#(sel(X1, X2))mark#(X1)mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(from(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, sel(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, from(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, s(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(s(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, X2))mark#(X2)mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(from(X))a__from#(mark(X))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, cons(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), a__sel(0, a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(sel(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(0, X2))a__sel#(0, mark(X2))mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(from(X))mark#(X)mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
a__sel#(0, cons(X, Y))mark#(X)a__from#(X)mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(cons(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__sel(mark(_x51), mark(_x52)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(cons(mark(_x51), _x52), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(s(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(a__from(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(cons(mark(_x51), _x52), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(from(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__from(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102))))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(a__sel(mark(_x51), mark(_x52)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(s(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Problem 18: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(s(X))mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))
mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, sel(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, from(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(s(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(cons(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x51), _x52), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(X1, X2))mark#(X1)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(from(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, s(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, X2))mark#(X2)mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(s(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, cons(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), a__sel(0, a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(sel(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(from(X))mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(sel(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x51), mark(_x52)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))a__sel#(0, cons(X, Y))mark#(X)
a__from#(X)mark#(X)mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(from(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61))))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52)))) 
Thus, the rule mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)))) is replaced by the following rules:
mark#(sel(sel(sel(0, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(sel(0, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102))))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52)))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))

Problem 19: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(s(X))mark#(X)mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))a__sel#(s(X), cons(Y, Z))mark#(X)
mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, sel(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, from(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(s(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(cons(X1, X2))mark#(X1)mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))
mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, 0))a__sel#(mark(X1), 0)
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(cons(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(cons(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x51), _x52), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, X2))mark#(X1)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(from(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))a__sel#(s(X), cons(Y, Z))mark#(Z)
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, s(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(s(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(0, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, cons(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), a__sel(0, a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(sel(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(sel(sel(_x41, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))
mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(from(X))mark#(X)mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))mark#(sel(sel(sel(sel(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x51), mark(_x52)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
a__from#(X)mark#(X)a__sel#(0, cons(X, Y))mark#(X)
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(0, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(from(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(s(mark(_x101))), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(0), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__sel(mark(_x101), mark(_x102))), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__from(mark(_x101))), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(s(mark(_x81)), _x62)))) 
Thus, the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62)))) is replaced by the following rules:
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(sel(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__sel(mark(_x101), mark(_x102))), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(_x81), _x62))))) → a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(s(_x101)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(s(mark(_x101))), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(from(_x101)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__from(mark(_x101))), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, cons(s(mark(_x81)), _x62)), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(0), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(0), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(s(_x81), _x62))))) → a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))

Problem 20: ForwardNarrowing



Dependency Pair Problem

Dependency Pairs

mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(X1, s(sel(_x51, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(s(X))mark#(X)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(cons(_x21, _x22), from(_x31)))a__sel#(cons(mark(_x21), _x22), a__from(mark(_x31)))mark#(sel(sel(s(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(s(_x21), s(_x31)))a__sel#(s(mark(_x21)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))mark#(sel(sel(_x21, _x22), s(_x31)))a__sel#(a__sel(mark(_x21), mark(_x22)), s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))mark#(sel(X1, s(sel(0, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(X1, s(sel(from(_x61), _x52))))a__sel#(mark(X1), s(a__sel(a__from(mark(_x61)), mark(_x52))))
mark#(sel(X1, s(cons(_x51, _x52))))a__sel#(mark(X1), s(cons(mark(_x51), _x52)))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, s(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), s(mark(_x101)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(X1, from(_x31)))a__sel#(mark(X1), a__from(mark(_x31)))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(0, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), 0)))
mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(_x21, sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
a__sel#(s(X), cons(Y, Z))mark#(X)mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(0, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(X1, s(s(_x51))))a__sel#(mark(X1), s(s(mark(_x51))))mark#(sel(X1, s(sel(0, s(_x61)))))a__sel#(mark(X1), s(a__sel(0, s(mark(_x61)))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
a__sel#(s(X), cons(Y, Z))a__sel#(mark(X), mark(Z))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(X1, s(sel(s(_x61), _x52))))a__sel#(mark(X1), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, from(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__from(mark(_x131))))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, sel(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__sel(mark(_x111), mark(_x112))))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, from(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), a__from(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(X1, s(sel(_x51, sel(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(s(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(s(mark(_x111)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(X1, s(sel(0, 0))))a__sel#(mark(X1), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(from(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__from(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(_x21, from(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(0)))a__sel#(mark(X1), s(0))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x51), mark(_x52))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))mark#(sel(sel(_x21, from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(mark(_x41), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))
mark#(sel(sel(sel(mark(_x51), mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))mark#(cons(X1, X2))mark#(X1)
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(sel(_x101, _x102)), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__sel(mark(_x101), mark(_x102))), _x62))))mark#(sel(X1, s(from(_x51))))a__sel#(mark(X1), s(a__from(mark(_x51))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, s(mark(_x61)))))mark#(sel(sel(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, s(_x131)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), s(mark(_x131))))), mark(_x52))))mark#(sel(X1, sel(_x31, _x32)))a__sel#(mark(X1), a__sel(mark(_x31), mark(_x32)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(0, s(_x31)))a__sel#(0, s(mark(_x31)))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(0, s(sel(0, _x52))))a__sel#(0, s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, 0), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), s(sel(_x51, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, s(sel(0, cons(_x61, _x62)))))a__sel#(mark(X1), s(a__sel(0, cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))
mark#(sel(X1, 0))a__sel#(mark(X1), 0)mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(0, X2))a__sel#(0, mark(X2))
mark#(sel(cons(from(_x41), _x22), X2))a__sel#(cons(a__from(mark(_x41)), _x22), mark(X2))mark#(sel(cons(_x21, _x22), 0))a__sel#(cons(mark(_x21), _x22), 0)
mark#(sel(sel(sel(0, 0), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(from(_x21), X2))a__sel#(a__from(mark(_x21)), mark(X2))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, s(_x51)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(_x51, s(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(cons(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(cons(mark(_x111), _x112), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(cons(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(cons(mark(_x51), _x52), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(X1, s(sel(0, from(_x61)))))a__sel#(mark(X1), s(a__sel(0, a__from(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(cons(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, 0)))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, 0), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(s(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(s(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(cons(_x21, _x22), s(sel(_x51, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(s(_x41), _x22), X2))a__sel#(cons(s(mark(_x41)), _x22), mark(X2))
mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(s(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(s(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(X1, X2))mark#(X1)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(s(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(s(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(0, _x52))))a__sel#(mark(X1), s(sel(0, mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(s(mark(_x81)), _x62))))mark#(sel(X1, s(sel(_x51, 0))))a__sel#(mark(X1), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(0, 0), from(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(X1, cons(_x31, _x32)))a__sel#(mark(X1), cons(mark(_x31), _x32))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(s(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(from(_x41), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, from(_x101))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__from(mark(_x101)))), mark(_x52))))
mark#(sel(from(_x21), s(_x31)))a__sel#(a__from(mark(_x21)), s(mark(_x31)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), 0))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, 0), cons(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(cons(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(cons(sel(_x41, _x42), _x22), X2))a__sel#(cons(a__sel(mark(_x41), mark(_x42)), _x22), mark(X2))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(s(_x91), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(s(mark(_x91)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(from(_x111), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__from(mark(_x111)), mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, _x52))))a__sel#(mark(X1), s(sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
a__sel#(s(X), cons(Y, Z))mark#(Z)mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(X1, s(sel(sel(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), a__from(mark(_x61)))))
mark#(sel(sel(_x21, 0), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(X1, s(sel(_x51, from(_x61)))))a__sel#(mark(X1), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))
mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(sel(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(_x21, _x22), s(sel(sel(0, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(0, mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, s(_x111)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), s(mark(_x111))))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(from(_x71), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(from(_x41), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__from(mark(_x41)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, cons(s(mark(_x81)), _x62)), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(X1, X2))mark#(X2)
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(_x51, s(_x61)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), s(mark(_x61)))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), s(mark(_x61)))))
mark#(sel(sel(0, _x22), s(sel(_x51, _x52))))a__sel#(a__sel(0, mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(cons(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(cons(mark(_x91), _x92), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(s(_x61), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(s(mark(_x61)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, _x52))))a__sel#(sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, 0))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), 0))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), 0))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), 0)))mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(from(X))a__from#(mark(X))mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, mark(_x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), X2))a__sel#(a__sel(mark(_x21), mark(_x22)), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, 0), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), 0), mark(_x52))))
mark#(sel(cons(_x21, _x22), sel(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), a__sel(mark(_x31), mark(_x32)))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, s(_x71)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), s(mark(_x71))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, mark(_x52)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(sel(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__sel(mark(_x121), mark(_x122)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, cons(_x71, _x72)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(sel(_x91, _x92), sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(cons(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(cons(mark(_x81), _x82), _x62))))mark#(sel(sel(_x21, _x22), s(sel(_x51, 0))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(s(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(0, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(0, _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(cons(_x21, _x22), cons(_x31, _x32)))a__sel#(cons(mark(_x21), _x22), cons(mark(_x31), _x32))
mark#(sel(sel(sel(0, 0), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, from(_x71)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__from(mark(_x71))), mark(_x52))))mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(0, from(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(0, a__from(mark(_x61)))))mark#(sel(sel(sel(0, cons(mark(_x61), _x62)), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, 0)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), 0)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(cons(_x21, _x22), s(sel(0, _x52))))a__sel#(cons(mark(_x21), _x22), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, cons(_x111, _x112)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), cons(mark(_x111), _x112)))), mark(_x52))))
mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), a__sel(mark(_x71), mark(_x72))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), a__sel(0, a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, from(_x71)), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__from(mark(_x71))), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(cons(_x41, _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(cons(mark(_x41), _x42), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(s(_x21), X2))a__sel#(s(mark(_x21)), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(_x51, sel(_x61, _x62)))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(mark(_x51), a__sel(mark(_x61), mark(_x62)))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), sel(_x51, _x52)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(_x81), _x62)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(_x21, 0), s(sel(_x51, _x52))))a__sel#(a__sel(mark(_x21), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(from(_x71), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__from(mark(_x71)), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(sel(_x111, _x112), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(a__sel(mark(_x111), mark(_x112)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(0, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(0, mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(s(mark(_x81)), _x62))))
mark#(sel(s(_x21), s(sel(0, _x52))))a__sel#(s(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(sel(_x71, _x72), sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, 0), 0), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), 0), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(cons(_x61, _x62), _x42), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(cons(mark(_x61), _x62), mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(0, s(sel(_x51, _x52))))a__sel#(0, s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(s(mark(_x81)), _x62))))mark#(sel(sel(_x21, cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(0, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(0, cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(from(_x91), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__from(mark(_x91)), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(0, mark(_x52))))
mark#(sel(cons(_x21, _x22), s(_x31)))a__sel#(cons(mark(_x21), _x22), s(mark(_x31)))mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, s(_x51)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x51))), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), from(_x51)), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), a__from(mark(_x51))), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(s(_x101)), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(s(mark(_x101))), _x62))))mark#(sel(sel(sel(_x41, 0), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), 0), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(sel(_x91, _x92), _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(a__sel(mark(_x91), mark(_x92)), mark(_x72))), mark(_x52))))mark#(sel(s(_x21), s(sel(_x51, _x52))))a__sel#(s(mark(_x21)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), s(_x51)), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), s(mark(_x61)))))
mark#(sel(sel(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52)), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, mark(_x42)))))a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, cons(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), cons(mark(_x131), _x132)))), mark(_x52))))
mark#(from(X))mark#(X)mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(s(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(s(mark(_x121)), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(cons(0, _x22), X2))a__sel#(cons(0, _x22), mark(X2))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(cons(_x71, _x72), _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(cons(mark(_x71), _x72), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(sel(_x51, _x52), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__sel(mark(_x51), mark(_x52)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(from(_x101)), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(a__from(mark(_x101))), _x62))))mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(sel(mark(_x51), cons(mark(_x61), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(_x61, _x62)))))a__sel#(sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, sel(_x101, sel(_x131, _x132)))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), a__sel(mark(_x131), mark(_x132))))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(0), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(0), _x62))))mark#(sel(cons(cons(_x41, _x42), _x22), X2))a__sel#(cons(cons(mark(_x41), _x42), _x22), mark(X2))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, cons(_x71, _x72)), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), cons(mark(_x71), _x72)), mark(_x52))))mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(X1, s(sel(cons(_x61, _x62), _x52))))a__sel#(mark(X1), s(a__sel(cons(mark(_x61), _x62), mark(_x52))))a__sel#(0, cons(X, Y))mark#(X)
a__from#(X)mark#(X)mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(cons(_x121, _x122), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(cons(mark(_x121), _x122), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x51, _x52)), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x51), _x52)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(0, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), 0)))
mark#(sel(sel(sel(_x41, sel(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(_x81), _x62)))))a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(mark(_x81)), _x62))))mark#(sel(sel(sel(_x41, s(_x71)), _x22), s(sel(0, _x52))))a__sel#(a__sel(a__sel(mark(_x41), s(mark(_x71))), mark(_x22)), s(a__sel(0, mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))mark#(sel(sel(_x21, _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(s(_x61), _x42), _x22), s(sel(sel(_x61, sel(_x71, _x72)), _x52))))a__sel#(a__sel(a__sel(s(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), mark(_x72))), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(_x71, cons(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), cons(mark(_x101), _x102))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), cons(_x51, _x52)), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), mark(_x52))))mark#(sel(sel(sel(from(_x51), _x42), 0), s(sel(sel(_x61, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x51)), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, from(_x61)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), a__from(mark(_x61)))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, 0))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), 0)))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(_x61, sel(_x71, sel(from(_x121), _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(mark(_x61), a__sel(mark(_x71), a__sel(a__from(mark(_x121)), mark(_x102)))), mark(_x52))))mark#(sel(sel(sel(_x41, _x42), 0), s(sel(_x51, _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(mark(_x51), mark(_x52))))
mark#(sel(sel(_x21, _x22), s(sel(sel(sel(_x71, _x72), _x62), _x52))))a__sel#(a__sel(mark(_x21), mark(_x22)), s(a__sel(a__sel(a__sel(mark(_x71), mark(_x72)), mark(_x62)), mark(_x52))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(sel(_x81, _x82), _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(a__sel(mark(_x81), mark(_x82)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(mark(_x61), _x62))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, sel(0, sel(_x101, _x102))), mark(_x42)))))a__sel#(a__sel(sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), a__sel(0, a__sel(mark(_x101), mark(_x102)))), mark(_x52))))
mark#(sel(from(_x21), s(sel(0, _x52))))a__sel#(a__from(mark(_x21)), s(a__sel(0, mark(_x52))))mark#(sel(sel(sel(_x41, _x42), _x22), s(sel(sel(_x61, _x62), s(_x61)))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), s(mark(_x61)))))
mark#(sel(sel(sel(0, 0), s(_x51)), s(sel(_x51, cons(_x61, _x62)))))a__sel#(a__sel(a__sel(0, 0), s(mark(_x51))), s(a__sel(mark(_x51), cons(mark(_x61), _x62))))mark#(sel(sel(sel(from(_x61), _x42), _x22), s(sel(sel(_x61, _x62), _x52))))a__sel#(a__sel(a__sel(a__from(mark(_x61)), mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), mark(_x52))))
mark#(sel(sel(sel(_x41, _x42), 0), s(sel(sel(0, sel(_x71, sel(_x101, _x102))), _x52))))a__sel#(a__sel(a__sel(mark(_x41), mark(_x42)), 0), s(a__sel(a__sel(0, a__sel(mark(_x71), a__sel(mark(_x101), mark(_x102)))), mark(_x52))))

Rewrite Rules

a__from(X)cons(mark(X), from(s(X)))a__sel(0, cons(X, Y))mark(X)
a__sel(s(X), cons(Y, Z))a__sel(mark(X), mark(Z))mark(from(X))a__from(mark(X))
mark(sel(X1, X2))a__sel(mark(X1), mark(X2))mark(cons(X1, X2))cons(mark(X1), X2)
mark(s(X))s(mark(X))mark(0)0
a__from(X)from(X)a__sel(X1, X2)sel(X1, X2)

Original Signature

Termination of terms over the following signature is verified: 0, s, a__sel, mark, from, sel, a__from, cons

Strategy


The right-hand side of the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) is narrowed to the following relevant and irrelevant terms (a narrowing is irrelevant if by dropping it the correctness (and completeness) of the processor is not influenced).
Relevant TermsIrrelevant Terms
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(a__from(mark(_x111)), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(a__sel(mark(_x111), mark(_x112)), _x102)), _x62)))) 
a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(cons(mark(_x111), _x112), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(0, _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(s(mark(_x111)), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) 
a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(s(cons(mark(_x101), _x102)), _x62)))) 
Thus, the rule mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62)))) is replaced by the following rules:
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(from(_x61), cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__from(mark(_x61)), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, from(_x71)), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, a__from(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), sel(_x51, _x52)), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__sel(mark(_x51), mark(_x52))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(sel(_x61, _x62), cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(a__sel(mark(_x61), mark(_x62)), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(s(_x111), _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(s(mark(_x111)), _x102)), _x62))))mark#(sel(sel(sel(0, sel(_x71, _x72)), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, a__sel(mark(_x71), mark(_x72))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), 0), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), 0), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), cons(_x51, _x52)), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), cons(mark(_x51), _x52)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), s(_x51)), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), s(mark(_x51))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(from(_x111), _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(a__from(mark(_x111)), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), from(_x51)), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), a__from(mark(_x51))), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, cons(_x71, _x72)), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, cons(mark(_x71), _x72)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(cons(_x61, _x62), cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(cons(mark(_x61), _x62), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(0, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(0, _x102)), _x62))))
mark#(sel(sel(sel(0, cons(s(cons(mark(_x101), _x102)), _x62)), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(s(_x61), cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(s(mark(_x61)), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, 0), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, 0), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, s(_x71)), _x22), s(sel(_x51, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, s(mark(_x71))), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(mark(_x101), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(0, cons(s(cons(_x101, _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(0, cons(s(cons(mark(_x101), _x102)), _x62))))mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(sel(_x111, _x112), _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(a__sel(mark(_x111), mark(_x112)), _x102)), _x62))))
mark#(sel(sel(sel(0, _x42), _x22), s(sel(_x51, cons(s(cons(cons(_x111, _x112), _x102)), _x62))))) → a__sel#(a__sel(a__sel(0, mark(_x42)), mark(_x22)), s(a__sel(mark(_x51), cons(s(cons(cons(mark(_x111), _x112), _x102)), _x62))))