Term Rewriting System R: [y, x, z] f(nil) -> nil f(.(nil, y)) -> .(nil, f(y)) f(.(.(x, y), z)) -> f(.(x, .(y, z))) g(nil) -> nil g(.(x, nil)) -> .(g(x), nil) g(.(x, .(y, z))) -> g(.(.(x, y), z)) Termination of R to be shown. Removing the following rules from R which fullfill a polynomial ordering: f(nil) -> nil where the Polynomial interpretation: POL(nil) = 0 POL(g(x_1)) = x_1 POL(f(x_1)) = 1 + x_1 POL(.(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: f(.(nil, y)) -> .(nil, f(y)) where the Polynomial interpretation: POL(g(x_1)) = x_1 POL(nil) = 1 POL(f(x_1)) = 2*x_1 POL(.(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: g(nil) -> nil where the Polynomial interpretation: POL(g(x_1)) = 1 + x_1 POL(nil) = 0 POL(f(x_1)) = 1 + x_1 POL(.(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: g(.(x, nil)) -> .(g(x), nil) where the Polynomial interpretation: POL(g(x_1)) = 2*x_1 POL(nil) = 1 POL(f(x_1)) = 2 + x_1 POL(.(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. This program has no overlaps, so it is sufficient to show innermost termination. R contains the following Dependency Pairs: F(.(.(x, y), z)) -> F(.(x, .(y, z))) G(.(x, .(y, z))) -> G(.(.(x, y), z)) Furthermore, R contains two SCCs. SCC1: F(.(.(x, y), z)) -> F(.(x, .(y, z))) By using a polynomial ordering, at least one Dependency Pair of this SCC can be strictly oriented. No rules need to be oriented. Used ordering: Polynomial ordering with Polynomial interpretation: POL(F(x_1)) = 1 + x_1 POL(.(x_1, x_2)) = 1 + x_1 resulting in no subcycles. SCC2: G(.(x, .(y, z))) -> G(.(.(x, y), z)) By using a polynomial ordering, at least one Dependency Pair of this SCC can be strictly oriented. No rules need to be oriented. Used ordering: Polynomial ordering with Polynomial interpretation: POL(G(x_1)) = x_1 POL(.(x_1, x_2)) = 1 + x_2 resulting in no subcycles. Termination of R successfully shown. Duration: 0.599 seconds.