(0) Obligation:
Relative term rewrite system:
The relative TRS consists of the following R rules:
top(left(car(x, y), car(old, z))) → top(right(y, car(old, z)))
top(left(car(x, car(old, y)), z)) → top(right(car(old, y), z))
top(right(x, car(y, car(old, z)))) → top(left(x, car(old, z)))
top(right(car(old, x), car(y, z))) → top(left(car(old, x), z))
top(left(bot, car(old, x))) → top(right(bot, car(old, x)))
top(right(car(old, x), bot)) → top(left(car(old, x), bot))
The relative TRS consists of the following S rules:
bot → car(new, bot)
top(right(x, car(y, z))) → top(right(x, z))
top(left(car(x, y), z)) → top(left(y, z))
(1) RelTRSRRRProof (EQUIVALENT transformation)
We used the following monotonic ordering for rule removal:
Matrix interpretation [MATRO] to (N^2, +, *, >=, >) :
POL(left(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(car(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(right(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
With this ordering the following rules can be removed [MATRO] because they are oriented strictly:
Rules from R:
top(left(car(x, car(old, y)), z)) → top(right(car(old, y), z))
top(right(x, car(y, car(old, z)))) → top(left(x, car(old, z)))
top(right(car(old, x), car(y, z))) → top(left(car(old, x), z))
top(right(car(old, x), bot)) → top(left(car(old, x), bot))
Rules from S:
none
(2) Obligation:
Relative term rewrite system:
The relative TRS consists of the following R rules:
top(left(car(x, y), car(old, z))) → top(right(y, car(old, z)))
top(left(bot, car(old, x))) → top(right(bot, car(old, x)))
The relative TRS consists of the following S rules:
bot → car(new, bot)
top(right(x, car(y, z))) → top(right(x, z))
top(left(car(x, y), z)) → top(left(y, z))
(3) RelTRSRRRProof (EQUIVALENT transformation)
We used the following monotonic ordering for rule removal:
Matrix interpretation [MATRO] to (N^2, +, *, >=, >) :
POL(left(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(car(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
POL(right(x1, x2)) = | | + | | · | x1 | + | | · | x2 |
With this ordering the following rules can be removed [MATRO] because they are oriented strictly:
Rules from R:
top(left(car(x, y), car(old, z))) → top(right(y, car(old, z)))
top(left(bot, car(old, x))) → top(right(bot, car(old, x)))
Rules from S:
none
(4) Obligation:
Relative term rewrite system:
R is empty.
The relative TRS consists of the following S rules:
bot → car(new, bot)
top(right(x, car(y, z))) → top(right(x, z))
top(left(car(x, y), z)) → top(left(y, z))
(5) RIsEmptyProof (EQUIVALENT transformation)
The TRS R is empty. Hence, termination is trivially proven.
(6) YES