Term Rewriting System R: [y, n, x] app(nil, y) -> y app(add(n, x), y) -> add(n, app(x, y)) reverse(nil) -> nil reverse(add(n, x)) -> app(reverse(x), add(n, nil)) shuffle(nil) -> nil shuffle(add(n, x)) -> add(n, shuffle(reverse(x))) Termination of R to be shown. Removing the following rules from R which fullfill a polynomial ordering: reverse(nil) -> nil where the Polynomial interpretation: POL(nil) = 0 POL(add(x_1, x_2)) = 2 + x_1 + x_2 POL(shuffle(x_1)) = 2*x_1 POL(reverse(x_1)) = 1 + x_1 POL(app(x_1, x_2)) = x_1 + x_2 was used. Not all Rules of R can be deleted, so we still have to regard a part of R. Removing the following rules from R which fullfill a polynomial ordering: shuffle(nil) -> nil where the Polynomial interpretation: POL(nil) = 0 POL(add(x_1, x_2)) = x_1 + x_2 POL(shuffle(x_1)) = 1 + x_1 POL(reverse(x_1)) = x_1 POL(app(x_1, x_2)) = x_1 + x_2 was used. Not all Rules of R can be deleted, so we still have to regard a part of R. Removing the following rules from R which fullfill a polynomial ordering: shuffle(add(n, x)) -> add(n, shuffle(reverse(x))) where the Polynomial interpretation: POL(nil) = 0 POL(add(x_1, x_2)) = 1 + x_1 + x_2 POL(shuffle(x_1)) = 2*x_1 POL(reverse(x_1)) = x_1 POL(app(x_1, x_2)) = x_1 + x_2 was used. Not all Rules of R can be deleted, so we still have to regard a part of R. Removing the following rules from R which fullfill a polynomial ordering: app(nil, y) -> y where the Polynomial interpretation: POL(add(x_1, x_2)) = 1 + x_1 + x_2 POL(nil) = 1 POL(reverse(x_1)) = 2*x_1 POL(app(x_1, x_2)) = x_1 + x_2 was used. Not all Rules of R can be deleted, so we still have to regard a part of R. Removing the following rules from R which fullfill a polynomial ordering: reverse(add(n, x)) -> app(reverse(x), add(n, nil)) where the Polynomial interpretation: POL(add(x_1, x_2)) = 1 + x_1 + x_2 POL(nil) = 0 POL(reverse(x_1)) = 2*x_1 POL(app(x_1, x_2)) = x_1 + x_2 was used. Not all Rules of R can be deleted, so we still have to regard a part of R. Removing the following rules from R which fullfill a polynomial ordering: app(add(n, x), y) -> add(n, app(x, y)) where the Polynomial interpretation: POL(add(x_1, x_2)) = 1 + x_1 + x_2 POL(app(x_1, x_2)) = 2*x_1 + x_2 was used. All Rules of R can be deleted. Termination of R successfully shown. Duration: 0.649 seconds.