MAYBE TRS: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} DP: Strict: { app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(cons(), x), app(app(append(), xs), ys)), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(append(), xs), app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(app(cons(), app(f, x)), nil()), app#(app(flatwith(), f), app(leaf(), x)) -> app#(cons(), app(f, x)), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwith(), f), app(node(), xs)) -> app#(flatwithsub(), f), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(append(), app(app(flatwith(), f), x)), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(flatwith(), f)} Weak: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} EDG: {(app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(flatwith(), f)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(append(), app(app(flatwith(), f), x))) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs))) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(flatwith(), f)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(append(), app(app(flatwith(), f), x))) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs))) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(flatwithsub(), f)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(cons(), app(f, x))) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(app(cons(), app(f, x)), nil())) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(append(), xs)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(cons(), x), app(app(append(), xs), ys))) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(append(), xs)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(cons(), x), app(app(append(), xs), ys))) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys)) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs))) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x)) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(append(), app(app(flatwith(), f), x))) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(flatwith(), f)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(app(cons(), app(f, x)), nil())) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(cons(), app(f, x))) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwith(), f), app(node(), xs)) -> app#(flatwithsub(), f)) (app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys)) (app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(cons(), x), app(app(append(), xs), ys))) (app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys), app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(append(), xs))} SCCS: Scc: { app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)} Scc: {app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys)} SCC: Strict: { app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwith(), f), x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)} Weak: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} SPSC: Simple Projection: pi(app#) = 1 Strict: { app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)} EDG: {(app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)) (app#(app(flatwith(), f), app(node(), xs)) -> app#(app(flatwithsub(), f), xs), app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs))} SCCS: Scc: {app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)} Scc: {app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x)} SCC: Strict: {app#(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app#(app(flatwithsub(), f), xs)} Weak: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} SPSC: Simple Projection: pi(app#) = 1 Strict: {} Qed SCC: Strict: {app#(app(flatwith(), f), app(leaf(), x)) -> app#(f, x)} Weak: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} SPSC: Simple Projection: pi(app#) = 0 Strict: {} Qed SCC: Strict: {app#(app(append(), app(app(cons(), x), xs)), ys) -> app#(app(append(), xs), ys)} Weak: { app(app(append(), app(app(cons(), x), xs)), ys) -> app(app(cons(), x), app(app(append(), xs), ys)), app(app(append(), nil()), ys) -> ys, app(app(flatwith(), f), app(leaf(), x)) -> app(app(cons(), app(f, x)), nil()), app(app(flatwith(), f), app(node(), xs)) -> app(app(flatwithsub(), f), xs), app(app(flatwithsub(), f), app(app(cons(), x), xs)) -> app(app(append(), app(app(flatwith(), f), x)), app(app(flatwithsub(), f), xs)), app(app(flatwithsub(), f), nil()) -> nil()} Fail