MAYBE MAYBE TRS: { active(dbl(X)) -> dbl(active(X)), active(dbl(0())) -> mark(0()), active(dbl(s(X))) -> mark(s(s(dbl(X)))), active(dbls(X)) -> dbls(active(X)), active(dbls(nil())) -> mark(nil()), active(dbls(cons(X, Y))) -> mark(cons(dbl(X), dbls(Y))), active(sel(X1, X2)) -> sel(X1, active(X2)), active(sel(X1, X2)) -> sel(active(X1), X2), active(sel(0(), cons(X, Y))) -> mark(X), active(sel(s(X), cons(Y, Z))) -> mark(sel(X, Z)), active(indx(X1, X2)) -> indx(active(X1), X2), active(indx(nil(), X)) -> mark(nil()), active(indx(cons(X, Y), Z)) -> mark(cons(sel(X, Z), indx(Y, Z))), active(from(X)) -> mark(cons(X, from(s(X)))), active(dbl1(X)) -> dbl1(active(X)), active(dbl1(0())) -> mark(01()), active(dbl1(s(X))) -> mark(s1(s1(dbl1(X)))), active(s1(X)) -> s1(active(X)), active(sel1(X1, X2)) -> sel1(X1, active(X2)), active(sel1(X1, X2)) -> sel1(active(X1), X2), active(sel1(0(), cons(X, Y))) -> mark(X), active(sel1(s(X), cons(Y, Z))) -> mark(sel1(X, Z)), active(quote(X)) -> quote(active(X)), active(quote(0())) -> mark(01()), active(quote(dbl(X))) -> mark(dbl1(X)), active(quote(s(X))) -> mark(s1(quote(X))), active(quote(sel(X, Y))) -> mark(sel1(X, Y)), dbl(mark(X)) -> mark(dbl(X)), dbl(ok(X)) -> ok(dbl(X)), s(ok(X)) -> ok(s(X)), dbls(mark(X)) -> mark(dbls(X)), dbls(ok(X)) -> ok(dbls(X)), cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)), sel(X1, mark(X2)) -> mark(sel(X1, X2)), sel(mark(X1), X2) -> mark(sel(X1, X2)), sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)), indx(mark(X1), X2) -> mark(indx(X1, X2)), indx(ok(X1), ok(X2)) -> ok(indx(X1, X2)), from(ok(X)) -> ok(from(X)), dbl1(mark(X)) -> mark(dbl1(X)), dbl1(ok(X)) -> ok(dbl1(X)), s1(mark(X)) -> mark(s1(X)), s1(ok(X)) -> ok(s1(X)), sel1(X1, mark(X2)) -> mark(sel1(X1, X2)), sel1(mark(X1), X2) -> mark(sel1(X1, X2)), sel1(ok(X1), ok(X2)) -> ok(sel1(X1, X2)), quote(mark(X)) -> mark(quote(X)), quote(ok(X)) -> ok(quote(X)), proper(0()) -> ok(0()), proper(dbl(X)) -> dbl(proper(X)), proper(s(X)) -> s(proper(X)), proper(nil()) -> ok(nil()), proper(dbls(X)) -> dbls(proper(X)), proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)), proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)), proper(indx(X1, X2)) -> indx(proper(X1), proper(X2)), proper(from(X)) -> from(proper(X)), proper(01()) -> ok(01()), proper(dbl1(X)) -> dbl1(proper(X)), proper(s1(X)) -> s1(proper(X)), proper(sel1(X1, X2)) -> sel1(proper(X1), proper(X2)), proper(quote(X)) -> quote(proper(X)), top(mark(X)) -> top(proper(X)), top(ok(X)) -> top(active(X)) } DUP: We consider a duplicating system. Trs: { active(dbl(X)) -> dbl(active(X)), active(dbl(0())) -> mark(0()), active(dbl(s(X))) -> mark(s(s(dbl(X)))), active(dbls(X)) -> dbls(active(X)), active(dbls(nil())) -> mark(nil()), active(dbls(cons(X, Y))) -> mark(cons(dbl(X), dbls(Y))), active(sel(X1, X2)) -> sel(X1, active(X2)), active(sel(X1, X2)) -> sel(active(X1), X2), active(sel(0(), cons(X, Y))) -> mark(X), active(sel(s(X), cons(Y, Z))) -> mark(sel(X, Z)), active(indx(X1, X2)) -> indx(active(X1), X2), active(indx(nil(), X)) -> mark(nil()), active(indx(cons(X, Y), Z)) -> mark(cons(sel(X, Z), indx(Y, Z))), active(from(X)) -> mark(cons(X, from(s(X)))), active(dbl1(X)) -> dbl1(active(X)), active(dbl1(0())) -> mark(01()), active(dbl1(s(X))) -> mark(s1(s1(dbl1(X)))), active(s1(X)) -> s1(active(X)), active(sel1(X1, X2)) -> sel1(X1, active(X2)), active(sel1(X1, X2)) -> sel1(active(X1), X2), active(sel1(0(), cons(X, Y))) -> mark(X), active(sel1(s(X), cons(Y, Z))) -> mark(sel1(X, Z)), active(quote(X)) -> quote(active(X)), active(quote(0())) -> mark(01()), active(quote(dbl(X))) -> mark(dbl1(X)), active(quote(s(X))) -> mark(s1(quote(X))), active(quote(sel(X, Y))) -> mark(sel1(X, Y)), dbl(mark(X)) -> mark(dbl(X)), dbl(ok(X)) -> ok(dbl(X)), s(ok(X)) -> ok(s(X)), dbls(mark(X)) -> mark(dbls(X)), dbls(ok(X)) -> ok(dbls(X)), cons(ok(X1), ok(X2)) -> ok(cons(X1, X2)), sel(X1, mark(X2)) -> mark(sel(X1, X2)), sel(mark(X1), X2) -> mark(sel(X1, X2)), sel(ok(X1), ok(X2)) -> ok(sel(X1, X2)), indx(mark(X1), X2) -> mark(indx(X1, X2)), indx(ok(X1), ok(X2)) -> ok(indx(X1, X2)), from(ok(X)) -> ok(from(X)), dbl1(mark(X)) -> mark(dbl1(X)), dbl1(ok(X)) -> ok(dbl1(X)), s1(mark(X)) -> mark(s1(X)), s1(ok(X)) -> ok(s1(X)), sel1(X1, mark(X2)) -> mark(sel1(X1, X2)), sel1(mark(X1), X2) -> mark(sel1(X1, X2)), sel1(ok(X1), ok(X2)) -> ok(sel1(X1, X2)), quote(mark(X)) -> mark(quote(X)), quote(ok(X)) -> ok(quote(X)), proper(0()) -> ok(0()), proper(dbl(X)) -> dbl(proper(X)), proper(s(X)) -> s(proper(X)), proper(nil()) -> ok(nil()), proper(dbls(X)) -> dbls(proper(X)), proper(cons(X1, X2)) -> cons(proper(X1), proper(X2)), proper(sel(X1, X2)) -> sel(proper(X1), proper(X2)), proper(indx(X1, X2)) -> indx(proper(X1), proper(X2)), proper(from(X)) -> from(proper(X)), proper(01()) -> ok(01()), proper(dbl1(X)) -> dbl1(proper(X)), proper(s1(X)) -> s1(proper(X)), proper(sel1(X1, X2)) -> sel1(proper(X1), proper(X2)), proper(quote(X)) -> quote(proper(X)), top(mark(X)) -> top(proper(X)), top(ok(X)) -> top(active(X)) } Fail