MAYBE MAYBE TRS: { app(app(app(app(filter2(), true()), f), x), xs) -> app(app(cons(), x), app(app(filter(), f), xs)), app(app(app(app(filter2(), false()), f), x), xs) -> app(app(filter(), f), xs), app(app(.(), x), app(i(), x)) -> 1(), app(app(.(), x), 1()) -> x, app(app(.(), y), app(app(.(), app(i(), y)), z)) -> z, app(app(.(), app(app(.(), x), y)), z) -> app(app(.(), x), app(app(.(), y), z)), app(app(.(), app(i(), x)), x) -> 1(), app(app(.(), app(i(), y)), app(app(.(), y), z)) -> z, app(app(.(), 1()), x) -> x, app(app(map(), f), app(app(cons(), x), xs)) -> app(app(cons(), app(f, x)), app(app(map(), f), xs)), app(app(map(), f), nil()) -> nil(), app(app(filter(), f), app(app(cons(), x), xs)) -> app(app(app(app(filter2(), app(f, x)), f), x), xs), app(app(filter(), f), nil()) -> nil(), app(i(), app(app(.(), x), y)) -> app(app(.(), app(i(), y)), app(i(), x)), app(i(), app(i(), x)) -> x, app(i(), 1()) -> 1() } DUP: We consider a duplicating system. Trs: { app(app(app(app(filter2(), true()), f), x), xs) -> app(app(cons(), x), app(app(filter(), f), xs)), app(app(app(app(filter2(), false()), f), x), xs) -> app(app(filter(), f), xs), app(app(.(), x), app(i(), x)) -> 1(), app(app(.(), x), 1()) -> x, app(app(.(), y), app(app(.(), app(i(), y)), z)) -> z, app(app(.(), app(app(.(), x), y)), z) -> app(app(.(), x), app(app(.(), y), z)), app(app(.(), app(i(), x)), x) -> 1(), app(app(.(), app(i(), y)), app(app(.(), y), z)) -> z, app(app(.(), 1()), x) -> x, app(app(map(), f), app(app(cons(), x), xs)) -> app(app(cons(), app(f, x)), app(app(map(), f), xs)), app(app(map(), f), nil()) -> nil(), app(app(filter(), f), app(app(cons(), x), xs)) -> app(app(app(app(filter2(), app(f, x)), f), x), xs), app(app(filter(), f), nil()) -> nil(), app(i(), app(app(.(), x), y)) -> app(app(.(), app(i(), y)), app(i(), x)), app(i(), app(i(), x)) -> x, app(i(), 1()) -> 1() } Fail