MAYBE MAYBE TRS: { a(a(a(if(), true()), x), xs) -> a(a(cons(), x), xs), a(a(a(if(), false()), x), xs) -> xs, a(a(append(), a(a(cons(), x), xs)), ys) -> a(a(cons(), x), a(a(append(), xs), ys)), a(a(append(), nil()), ys) -> ys, a(a(filter(), f), a(a(cons(), x), xs)) -> a(a(a(if(), a(f, x)), x), a(a(filter(), f), xs)), a(a(filter(), f), nil()) -> nil(), a(a(le(), a(s(), x)), a(s(), y)) -> a(a(le(), x), y), a(a(le(), a(s(), x)), 0()) -> false(), a(a(le(), 0()), y) -> true(), a(a(not(), f), b) -> a(not2(), a(f, b)), a(not2(), true()) -> false(), a(not2(), false()) -> true(), a(qs(), a(a(cons(), x), xs)) -> a( a(append(), a(qs(), a(a(filter(), a(le(), x)), xs))), a(a(cons(), x), a(qs(), a(a(filter(), a(not(), a(le(), x))), xs))) ), a(qs(), nil()) -> nil() } DUP: We consider a duplicating system. Trs: { a(a(a(if(), true()), x), xs) -> a(a(cons(), x), xs), a(a(a(if(), false()), x), xs) -> xs, a(a(append(), a(a(cons(), x), xs)), ys) -> a(a(cons(), x), a(a(append(), xs), ys)), a(a(append(), nil()), ys) -> ys, a(a(filter(), f), a(a(cons(), x), xs)) -> a(a(a(if(), a(f, x)), x), a(a(filter(), f), xs)), a(a(filter(), f), nil()) -> nil(), a(a(le(), a(s(), x)), a(s(), y)) -> a(a(le(), x), y), a(a(le(), a(s(), x)), 0()) -> false(), a(a(le(), 0()), y) -> true(), a(a(not(), f), b) -> a(not2(), a(f, b)), a(not2(), true()) -> false(), a(not2(), false()) -> true(), a(qs(), a(a(cons(), x), xs)) -> a( a(append(), a(qs(), a(a(filter(), a(le(), x)), xs))), a(a(cons(), x), a(qs(), a(a(filter(), a(not(), a(le(), x))), xs))) ), a(qs(), nil()) -> nil() } Fail