MAYBE MAYBE TRS: { top(free(x)) -> top(check(new(x))), check(new(x)) -> new(check(x)), check(free(x)) -> free(check(x)), check(old(x)) -> old(x), check(old(x)) -> old(check(x)), new(free(x)) -> free(new(x)), new(serve()) -> free(serve()), old(free(x)) -> free(old(x)), old(serve()) -> free(serve()) } DUP: We consider a non-duplicating system. Trs: { top(free(x)) -> top(check(new(x))), check(new(x)) -> new(check(x)), check(free(x)) -> free(check(x)), check(old(x)) -> old(x), check(old(x)) -> old(check(x)), new(free(x)) -> free(new(x)), new(serve()) -> free(serve()), old(free(x)) -> free(old(x)), old(serve()) -> free(serve()) } Fail