TIMEOUT
The TRS could not be proven terminating. The proof attempt took 60001 ms.
The following DP Processors were used
Problem 1 was processed with processor DependencyGraph (72ms).
| Problem 2 was processed with processor ForwardNarrowing (3ms).
| | Problem 3 was processed with processor ForwardNarrowing (3ms).
| | | Problem 4 was processed with processor ForwardNarrowing (5ms).
| | | | Problem 5 was processed with processor ForwardNarrowing (1ms).
| | | | | Problem 6 was processed with processor ForwardNarrowing (4ms).
| | | | | | Problem 7 was processed with processor ForwardNarrowing (3ms).
| | | | | | | Problem 8 was processed with processor ForwardNarrowing (3ms).
| | | | | | | | Problem 9 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | Problem 10 was processed with processor ForwardNarrowing (7ms).
| | | | | | | | | | Problem 11 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | | | Problem 12 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | | | | Problem 13 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | | | | | Problem 14 was processed with processor ForwardNarrowing (1ms).
| | | | | | | | | | | | | | Problem 15 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | | | | | | | Problem 16 was processed with processor ForwardNarrowing (1ms).
| | | | | | | | | | | | | | | | Problem 17 was processed with processor ForwardNarrowing (2ms).
| | | | | | | | | | | | | | | | | Problem 18 was processed with processor ForwardNarrowing (3ms).
| | | | | | | | | | | | | | | | | | Problem 19 was processed with processor ForwardNarrowing (3ms).
| | | | | | | | | | | | | | | | | | | Problem 20 was processed with processor ForwardNarrowing (4ms).
| | | | | | | | | | | | | | | | | | | | Problem 21 was processed with processor ForwardNarrowing (3ms).
| | | | | | | | | | | | | | | | | | | | | Problem 22 was processed with processor ForwardNarrowing (8ms).
| | | | | | | | | | | | | | | | | | | | | | Problem 23 was processed with processor ForwardNarrowing (5ms).
| | | | | | | | | | | | | | | | | | | | | | | Problem 24 was processed with processor ForwardNarrowing (23ms).
| | | | | | | | | | | | | | | | | | | | | | | | Problem 25 was processed with processor ForwardNarrowing (39ms).
| | | | | | | | | | | | | | | | | | | | | | | | | Problem 26 was processed with processor ForwardNarrowing (19ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem 27 was processed with processor ForwardNarrowing (33ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 28 was processed with processor ForwardNarrowing (65ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 29 was processed with processor ForwardNarrowing (99ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 30 was processed with processor ForwardNarrowing (79ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 31 was processed with processor ForwardNarrowing (117ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 32 was processed with processor ForwardNarrowing (68ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 33 was processed with processor ForwardNarrowing (101ms).
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 34 remains open; application of the following processors failed [ForwardNarrowing (103ms), ForwardNarrowing (89ms), ForwardNarrowing (83ms), ForwardNarrowing (100ms), ForwardNarrowing (83ms), ForwardNarrowing (121ms), ForwardNarrowing (76ms), ForwardNarrowing (77ms), ForwardNarrowing (timeout)].
The following open problems remain:
Open Dependency Pair Problem 2
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(plus, app(s, x)), y) | → | app#(s, app(app(plus, x), y)) | | app#(app(plus, app(s, x)), y) | → | app#(plus, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Problem 1: DependencyGraph
Dependency Pair Problem
Dependency Pairs
inc# | → | app#(s, 0) | | inc# | → | app#(map, app(plus, app(s, 0))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
inc# | → | app#(plus, app(s, 0)) | | app#(app(plus, app(s, x)), y) | → | app#(s, app(app(plus, x), y)) |
app#(app(plus, app(s, x)), y) | → | app#(plus, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The following SCCs where found
app#(app(map, f), app(app(cons, x), xs)) → app#(app(cons, app(f, x)), app(app(map, f), xs)) | app#(app(map, f), app(app(cons, x), xs)) → app#(f, x) |
app#(app(plus, app(s, x)), y) → app#(s, app(app(plus, x), y)) | app#(app(plus, app(s, x)), y) → app#(plus, x) |
app#(app(map, f), app(app(cons, x), xs)) → app#(app(map, f), xs) | app#(app(plus, app(s, x)), y) → app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) → app#(map, f) | app#(app(map, f), app(app(cons, x), xs)) → app#(cons, app(f, x)) |
Problem 2: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, x)), y) | → | app#(s, app(app(plus, x), y)) | | app#(app(plus, app(s, x)), y) | → | app#(plus, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s,
x)),
y) → app
#(s, app(app(plus,
x),
y)) 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 Terms | Irrelevant Terms |
---|
app#(s, _x31) | |
app#(s, app(s, app(app(plus, _x32), _x31))) | |
Thus, the rule app
#(app(plus, app(s,
x)),
y) → app
#(s, app(app(plus,
x),
y)) is replaced by the following rules:
app#(app(plus, app(s, app(s, _x32))), _x31) → app#(s, app(s, app(app(plus, _x32), _x31))) | app#(app(plus, app(s, 0)), _x31) → app#(s, _x31) |
Problem 3: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(plus, app(s, app(s, _x32))), _x31) | → | app#(s, app(s, app(app(plus, _x32), _x31))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(plus, app(s, x)), y) | → | app#(plus, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s,
_x32))),
_x31) → app
#(s, app(s, app(app(plus,
_x32),
_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 Terms | Irrelevant Terms |
---|
app#(s, app(s, _x61)) | |
app#(s, app(s, app(s, app(app(plus, _x62), _x61)))) | |
Thus, the rule app
#(app(plus, app(s, app(s,
_x32))),
_x31) → app
#(s, app(s, app(app(plus,
_x32),
_x31))) is replaced by the following rules:
app#(app(plus, app(s, app(s, 0))), _x61) → app#(s, app(s, _x61)) | app#(app(plus, app(s, app(s, app(s, _x62)))), _x61) → app#(s, app(s, app(s, app(app(plus, _x62), _x61)))) |
Problem 4: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, 0))), _x61) | → | app#(s, app(s, _x61)) | | app#(app(plus, app(s, x)), y) | → | app#(plus, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
app#(app(plus, app(s, app(s, app(s, _x62)))), _x61) | → | app#(s, app(s, app(s, app(app(plus, _x62), _x61)))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, 0))),
_x61) → app
#(s, app(s,
_x61)) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, 0))),
_x61) → app
#(s, app(s,
_x61)) is deleted.
Problem 5: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(plus, app(s, x)), y) | → | app#(plus, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, _x62)))), _x61) | → | app#(s, app(s, app(s, app(app(plus, _x62), _x61)))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(plus, app(s,
x)),
y) → app
#(plus,
x) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s,
x)),
y) → app
#(plus,
x) is deleted.
Problem 6: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
app#(app(plus, app(s, app(s, app(s, _x62)))), _x61) | → | app#(s, app(s, app(s, app(app(plus, _x62), _x61)))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s,
_x62)))),
_x61) → app
#(s, app(s, app(s, app(app(plus,
_x62),
_x61)))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) | |
app#(s, app(s, app(s, _x71))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s,
_x62)))),
_x61) → app
#(s, app(s, app(s, app(app(plus,
_x62),
_x61)))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, 0)))), _x71) → app#(s, app(s, app(s, _x71))) | app#(app(plus, app(s, app(s, app(s, app(s, _x72))))), _x71) → app#(s, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) |
Problem 7: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(plus, app(s, app(s, app(s, 0)))), _x71) | → | app#(s, app(s, app(s, _x71))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(plus, app(s, app(s, app(s, app(s, _x72))))), _x71) | → | app#(s, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, 0)))),
_x71) → app
#(s, app(s, app(s,
_x71))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, 0)))),
_x71) → app
#(s, app(s, app(s,
_x71))) is deleted.
Problem 8: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, _x72))))), _x71) | → | app#(s, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s,
_x72))))),
_x71) → app
#(s, app(s, app(s, app(s, app(app(plus,
_x72),
_x71))))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, _x101)))) | |
app#(s, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s,
_x72))))),
_x71) → app
#(s, app(s, app(s, app(s, app(app(plus,
_x72),
_x71))))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, app(s, 0))))), _x101) → app#(s, app(s, app(s, app(s, _x101)))) | app#(app(plus, app(s, app(s, app(s, app(s, app(s, _x102)))))), _x101) → app#(s, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) |
Problem 9: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(plus, app(s, app(s, app(s, app(s, 0))))), _x101) | → | app#(s, app(s, app(s, app(s, _x101)))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, _x102)))))), _x101) | → | app#(s, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, 0))))),
_x101) → app
#(s, app(s, app(s, app(s,
_x101)))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, 0))))),
_x101) → app
#(s, app(s, app(s, app(s,
_x101)))) is deleted.
Problem 10: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, _x102)))))), _x101) | → | app#(s, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s,
_x102)))))),
_x101) → app
#(s, app(s, app(s, app(s, app(s, app(app(plus,
_x102),
_x101)))))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | |
app#(s, app(s, app(s, app(s, app(s, _x111))))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s,
_x102)))))),
_x101) → app
#(s, app(s, app(s, app(s, app(s, app(app(plus,
_x102),
_x101)))))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, app(s, app(s, 0)))))), _x111) → app#(s, app(s, app(s, app(s, app(s, _x111))))) | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) → app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Problem 11: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(plus, app(s, app(s, app(s, app(s, app(s, 0)))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, _x111))))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, 0)))))),
_x111) → app
#(s, app(s, app(s, app(s, app(s,
_x111))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, 0)))))),
_x111) → app
#(s, app(s, app(s, app(s, app(s,
_x111))))) is deleted.
Problem 12: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(cons, app(f, x)) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map,
f), app(app(cons,
x),
xs)) → app
#(cons, app(
f,
x)) 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 Terms | Irrelevant Terms |
---|
app#(cons, _x31) | |
app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | |
app#(cons, app(s, app(app(plus, _x32), _x31))) | |
app#(cons, nil) | |
Thus, the rule app
#(app(map,
f), app(app(cons,
x),
xs)) → app
#(cons, app(
f,
x)) is replaced by the following rules:
app#(app(map, app(plus, app(s, _x32))), app(app(cons, _x31), xs)) → app#(cons, app(s, app(app(plus, _x32), _x31))) | app#(app(map, app(map, _x31)), app(app(cons, nil), xs)) → app#(cons, nil) |
app#(app(map, app(plus, 0)), app(app(cons, _x31), xs)) → app#(cons, _x31) | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) → app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
Problem 13: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, app(plus, app(s, _x32))), app(app(cons, _x31), xs)) | → | app#(cons, app(s, app(app(plus, _x32), _x31))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, app(map, _x31)), app(app(cons, nil), xs)) | → | app#(cons, nil) |
app#(app(map, app(plus, 0)), app(app(cons, _x31), xs)) | → | app#(cons, _x31) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s,
_x32))), app(app(cons,
_x31),
xs)) → app
#(cons, app(s, app(app(plus,
_x32),
_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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) | |
app#(cons, app(s, _x61)) | |
Thus, the rule app
#(app(map, app(plus, app(s,
_x32))), app(app(cons,
_x31),
xs)) → app
#(cons, app(s, app(app(plus,
_x32),
_x31))) is replaced by the following rules:
app#(app(map, app(plus, app(s, 0))), app(app(cons, _x61), xs)) → app#(cons, app(s, _x61)) | app#(app(map, app(plus, app(s, app(s, _x62)))), app(app(cons, _x61), xs)) → app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) |
Problem 14: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(map, _x31)), app(app(cons, nil), xs)) | → | app#(cons, nil) | | app#(app(map, app(plus, app(s, 0))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, _x61)) |
app#(app(map, app(plus, 0)), app(app(cons, _x31), xs)) | → | app#(cons, _x31) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(map, app(plus, app(s, app(s, _x62)))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(map,
_x31)), app(app(cons, nil),
xs)) → app
#(cons, nil) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(map,
_x31)), app(app(cons, nil),
xs)) → app
#(cons, nil) is deleted.
Problem 15: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(plus, app(s, 0))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, _x61)) | | app#(app(map, app(plus, 0)), app(app(cons, _x31), xs)) | → | app#(cons, _x31) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, app(plus, app(s, app(s, _x62)))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, 0))), app(app(cons,
_x61),
xs)) → app
#(cons, app(s,
_x61)) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(plus, app(s, 0))), app(app(cons,
_x61),
xs)) → app
#(cons, app(s,
_x61)) is deleted.
Problem 16: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(plus, 0)), app(app(cons, _x31), xs)) | → | app#(cons, _x31) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(map, app(plus, app(s, app(s, _x62)))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, 0)), app(app(cons,
_x31),
xs)) → app
#(cons,
_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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(plus, 0)), app(app(cons,
_x31),
xs)) → app
#(cons,
_x31) is deleted.
Problem 17: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, app(plus, app(s, app(s, _x62)))), app(app(cons, _x61), xs)) | → | app#(cons, app(s, app(s, app(app(plus, _x62), _x61)))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s,
_x62)))), app(app(cons,
_x61),
xs)) → app
#(cons, app(s, app(s, app(app(plus,
_x62),
_x61)))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, _x71))) | |
app#(cons, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s,
_x62)))), app(app(cons,
_x61),
xs)) → app
#(cons, app(s, app(s, app(app(plus,
_x62),
_x61)))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, _x72))))), app(app(cons, _x71), xs)) → app#(cons, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) | app#(app(map, app(plus, app(s, app(s, 0)))), app(app(cons, _x71), xs)) → app#(cons, app(s, app(s, _x71))) |
Problem 18: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, app(plus, app(s, app(s, app(s, _x72))))), app(app(cons, _x71), xs)) | → | app#(cons, app(s, app(s, app(s, app(app(plus, _x72), _x71))))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, app(plus, app(s, app(s, 0)))), app(app(cons, _x71), xs)) | → | app#(cons, app(s, app(s, _x71))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s,
_x72))))), app(app(cons,
_x71),
xs)) → app
#(cons, app(s, app(s, app(s, app(app(plus,
_x72),
_x71))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) | |
app#(cons, app(s, app(s, app(s, _x101)))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s,
_x72))))), app(app(cons,
_x71),
xs)) → app
#(cons, app(s, app(s, app(s, app(app(plus,
_x72),
_x71))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, 0))))), app(app(cons, _x101), xs)) → app#(cons, app(s, app(s, app(s, _x101)))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, _x102)))))), app(app(cons, _x101), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) |
Problem 19: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, app(plus, app(s, app(s, app(s, 0))))), app(app(cons, _x101), xs)) | → | app#(cons, app(s, app(s, app(s, _x101)))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, _x102)))))), app(app(cons, _x101), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(map, app(plus, app(s, app(s, 0)))), app(app(cons, _x71), xs)) | → | app#(cons, app(s, app(s, _x71))) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, 0))))), app(app(cons,
_x101),
xs)) → app
#(cons, app(s, app(s, app(s,
_x101)))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, 0))))), app(app(cons,
_x101),
xs)) → app
#(cons, app(s, app(s, app(s,
_x101)))) is deleted.
Problem 20: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, _x102)))))), app(app(cons, _x101), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(app(plus, _x102), _x101)))))) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, app(plus, app(s, app(s, 0)))), app(app(cons, _x71), xs)) | → | app#(cons, app(s, app(s, _x71))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s,
_x102)))))), app(app(cons,
_x101),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(app(plus,
_x102),
_x101)))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, _x111))))) | |
app#(cons, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s,
_x102)))))), app(app(cons,
_x101),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(app(plus,
_x102),
_x101)))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, app(s, 0)))))), app(app(cons, _x111), xs)) → app#(cons, app(s, app(s, app(s, app(s, _x111))))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, _x112))))))), app(app(cons, _x111), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Problem 21: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, 0)))))), app(app(cons, _x111), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, _x111))))) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(map, app(plus, app(s, app(s, 0)))), app(app(cons, _x71), xs)) | → | app#(cons, app(s, app(s, _x71))) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(map, f) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, _x112))))))), app(app(cons, _x111), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) | | app#(app(plus, app(s, 0)), _x31) | → | app#(s, _x31) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: plus, app, 0, inc, s, map, cons, nil
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, 0)))))), app(app(cons,
_x111),
xs)) → app
#(cons, app(s, app(s, app(s, app(s,
_x111))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, 0)))))), app(app(cons,
_x111),
xs)) → app
#(cons, app(s, app(s, app(s, app(s,
_x111))))) is deleted.
Problem 22: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x412))))))))))))))))))))), app(app(cons, _x411), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x412), _x411))))))))))))))))))))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))), app(app(cons, _x411), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x411))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, _x112))))))), _x111) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x112), _x111))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x412))))))))))))))))))))), app(app(cons,
_x411),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x412),
_x411))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x421)))))))))))))))))))) | |
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x422), _x421)))))))))))))))))))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x412))))))))))))))))))))), app(app(cons,
_x411),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x412),
_x411))))))))))))))))))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x422)))))))))))))))))))))), app(app(cons, _x421), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x422), _x421)))))))))))))))))))))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))), app(app(cons, _x421), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x421)))))))))))))))))))) |
Problem 23: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))), _x271) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x271))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x332))))))))))))))))), _x331) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x332), _x331))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))), _x331) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x331))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))), _x221) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x221)))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x732))))))))))))))))))))))))))))))))))))), app(app(cons, _x731), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x732), _x731))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))),
_x271) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x271))))))))))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))),
_x271) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x271))))))))))))) is deleted.
Problem 24: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1011), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1011))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1021), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1021)))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x931), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x931))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x981), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1022)))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1021), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1022), _x1021)))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x971), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x971))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x542)))))))))))))))))))))))))))), _x541) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x542), _x541)))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x1011),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1011))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x1011),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1011))))))))))))))))))))))))))))))))))))))))))))))))) is deleted.
Problem 25: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1472))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1471), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1472), _x1471))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1471), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1471))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x542)))))))))))))))))))))))))))), _x541) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x542), _x541)))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1472))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x1471),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x1472),
_x1471))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1502), _x1501)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1501)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1472))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x1471),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x1472),
_x1471))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1501), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1501)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1502)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1501), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1502), _x1501)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Problem 26: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))), _x941) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x941)))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x942)))))))))))))))))))))))))))))))))))))))))))))))), _x941) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x942), _x941)))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))), _x581) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x581)))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1612))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1611), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1612), _x1611))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))), _x871) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x871))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))),
_x941) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x941)))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))),
_x941) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x941)))))))))))))))))))))))))))))))))))))))))))))) is deleted.
Problem 27: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1421) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1421)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1432))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1431) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1432), _x1431))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), _x981) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))), _x581) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x581)))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1612))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1611), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1612), _x1611))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x1421) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1421)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x1421) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1421)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is deleted.
Problem 28: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1832))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1831) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1832), _x1831))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1831) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1831))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1701) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1701)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1671), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1541) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1541)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1771) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1771))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1742)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1741), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1742), _x1741)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), _x981) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1661), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1661)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1832))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x1831) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x1832),
_x1831))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1861)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1862), _x1861)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x1832))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x1831) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x1832),
_x1831))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1862)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1861) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1862), _x1861)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x1861) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1861)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Problem 29: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2302)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2301) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2302), _x2301)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), _x981) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1742)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1741), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1742), _x1741)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1661), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1661)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2011) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2011))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2302)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x2301) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2302),
_x2301)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2332), _x2331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2302)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x2301) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2302),
_x2301)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2331) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2332))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2331) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2332), _x2331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Problem 30: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2671) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2672))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2671) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2672), _x2671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2631) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2631))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), _x981) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1902)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1901), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1902), _x1901)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1811), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1811))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2461) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2461)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2011) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2011))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1661), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1661)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x2671) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x2671) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is deleted.
Problem 31: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3172))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x3171) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x3172), _x3171))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))), _x981) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x981)))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1661), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1661)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2011) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2011))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1902)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1901), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x1902), _x1901)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2461) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2461)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1811), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1811))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x3172))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x3171) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x3172),
_x3171))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x3182), _x3181)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3181)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x3172))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))),
_x3171) → app
#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x3172),
_x3171))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3182)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x3181) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x3182), _x3181)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x3181) → app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3181)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Problem 32: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2232))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2231), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2232), _x2231))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2231), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2231))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2211), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2211))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3332))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x3331) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x3332), _x3331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2011) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2011))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1811), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1811))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2141), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2141)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2232))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x2231),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2232),
_x2231))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2262), _x2261)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2261)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2232))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x2231),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2232),
_x2231))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2262)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2261), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2262), _x2261)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2261), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2261)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Problem 33: ForwardNarrowing
Dependency Pair Problem
Dependency Pairs
app#(app(map, f), app(app(cons, x), xs)) | → | app#(f, x) | | app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(cons, app(f, x)), app(app(map, f), xs)) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2772))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2771), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2772), _x2771))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(map, _x31)), app(app(cons, app(app(cons, _x33), _x32)), xs)) | → | app#(cons, app(app(cons, app(_x31, _x33)), app(app(map, _x31), _x32))) |
app#(app(map, f), app(app(cons, x), xs)) | → | app#(app(map, f), xs) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2741), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2741)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, x)), y) | → | app#(app(plus, x), y) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2671), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2671))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2411), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2411))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x2011) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2011))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x1811), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x1811))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2731), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2731))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
app#(app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x3332))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), _x3331) | → | app#(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x3332), _x3331))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2541), xs)) | → | app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2541)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
Rewrite Rules
app(app(plus, 0), y) | → | y | | app(app(plus, app(s, x)), y) | → | app(s, app(app(plus, x), y)) |
app(app(map, f), nil) | → | nil | | app(app(map, f), app(app(cons, x), xs)) | → | app(app(cons, app(f, x)), app(app(map, f), xs)) |
inc | → | app(map, app(plus, app(s, 0))) |
Original Signature
Termination of terms over the following signature is verified: app, plus, 0, s, inc, map, nil, cons
Strategy
The right-hand side of the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2772))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x2771),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2772),
_x2771))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 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 Terms | Irrelevant Terms |
---|
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2782), _x2781)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2781)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | |
Thus, the rule app
#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s,
_x2772))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons,
_x2771),
xs)) → app
#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus,
_x2772),
_x2771))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) is replaced by the following rules:
app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, 0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2781), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2781)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) | app#(app(map, app(plus, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, _x2782)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))), app(app(cons, _x2781), xs)) → app#(cons, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(s, app(app(plus, _x2782), _x2781)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |