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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} DP: Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(cons(), x), app(app(filter(), f), xs)), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(cons(), x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(filter(), f), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(filter(), f), app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(h(), z), app(e(), x)) -> app#(h(), app(c(), z)), app#(app(h(), z), app(e(), x)) -> app#(c(), z), app#(app(h(), z), app(e(), x)) -> app#(d(), z), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x)), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0()), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y)), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(cons(), app(f, x)), app(app(map(), f), xs)), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(cons(), app(f, x)), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(app(filter2(), app(f, x)), f), x), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(filter2(), app(f, x)), f), x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(filter2(), app(f, x)), f), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(filter2(), app(f, x))} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} EDG: { (app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x)) (app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y))) (app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(filter2(), app(f, x))) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(filter2(), app(f, x)), f)) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(filter2(), app(f, x)), f), x)) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(app(filter2(), app(f, x)), f), x), xs)) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(cons(), app(f, x))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(cons(), app(f, x)), app(app(map(), f), xs))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(d(), z)) (app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(c(), z)) (app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(h(), app(c(), z))) (app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x)) (app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x)), app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y)), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x)) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y)), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y)), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(filter2(), app(f, x))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(filter2(), app(f, x)), f)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(filter2(), app(f, x)), f), x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(app(filter2(), app(f, x)), f), x), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(cons(), app(f, x))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, 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), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(d(), z)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(c(), z)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(h(), app(c(), z))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x))) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(filter(), f)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(filter(), f)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(cons(), x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(cons(), x), app(app(filter(), f), xs))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(cons(), x), app(app(filter(), f), xs))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(cons(), x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(filter(), f)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(filter(), f)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(app(d(), z), x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(h(), app(c(), z))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(c(), z)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(h(), z), app(e(), x)) -> app#(d(), z)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(e(), app(app(g(), x), y))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(g(), app(e(), x)), app(e(), y)) -> app#(g(), x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(cons(), app(f, x)), app(app(map(), f), xs))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(cons(), app(f, x))) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(app(filter2(), app(f, x)), f), x), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(filter2(), app(f, x)), f), x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(filter2(), app(f, x)), f)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(filter2(), app(f, x))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(app(filter2(), app(f, x)), f), x), xs)) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(app(filter2(), app(f, x)), f), x)) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(app(filter2(), app(f, x)), f)) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(filter2(), app(f, x))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(g(), app(e(), x)), app(app(d(), z), y))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(e(), x)) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(g(), app(e(), x))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), 0()), 0())) -> app#(e(), 0())) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y)))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(d(), z)) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(g(), app(app(d(), app(c(), z)), app(app(g(), x), y)))) } SCCS: Scc: {app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)} Scc: { app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} Scc: {app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x))} Scc: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} SCC: Strict: {app#(app(g(), app(e(), x)), app(e(), y)) -> app#(app(g(), x), y)} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: {} Qed SCC: Strict: { app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), z), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: { app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} EDG: {(app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))) (app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y)) (app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)))} SCCS: Scc: { app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} SCC: Strict: { app#(app(d(), z), app(app(g(), x), y)) -> app#(app(d(), z), y), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: {app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} EDG: {(app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)), app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y)))} SCCS: Scc: {app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} SCC: Strict: {app#(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app#(app(d(), app(c(), z)), app(app(g(), x), y))} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: {} Qed SCC: Strict: {app#(app(h(), z), app(e(), x)) -> app#(app(h(), app(c(), z)), app(app(d(), z), x))} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} Fail SCC: Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(app(map(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} EDG: {(app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x))} SCCS: Scc: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} SCC: Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(map(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} EDG: {(app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)) (app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x))} SCCS: Scc: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} SCC: Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(filter(), f), app(app(cons(), x), xs)) -> app#(f, x)} Weak: { 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(h(), z), app(e(), x)) -> app(app(h(), app(c(), z)), app(app(d(), z), x)), app(app(d(), z), app(app(g(), x), y)) -> app(app(g(), app(e(), x)), app(app(d(), z), y)), app(app(d(), z), app(app(g(), 0()), 0())) -> app(e(), 0()), app(app(d(), app(c(), z)), app(app(g(), app(app(g(), x), y)), 0())) -> app(app(g(), app(app(d(), app(c(), z)), app(app(g(), x), y))), app(app(d(), z), app(app(g(), x), y))), app(app(g(), app(e(), x)), app(e(), y)) -> app(e(), app(app(g(), x), y)), 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()} SPSC: Simple Projection: pi(app#) = 1 Strict: { app#(app(app(app(filter2(), true()), f), x), xs) -> app#(app(filter(), f), xs), app#(app(app(app(filter2(), false()), f), x), xs) -> app#(app(filter(), f), xs)} EDG: {} SCCS: Qed