MAYBE TRS: { app(app(app(if(), true()), x), y) -> x, app(app(app(if(), false()), x), y) -> y, app(app(app(until(), p), f), x) -> app(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))} DP: Strict: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x))), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(if(), app(p, x)), x), app#(app(app(until(), p), f), x) -> app#(if(), app(p, x))} Weak: { app(app(app(if(), true()), x), y) -> x, app(app(app(if(), false()), x), y) -> y, app(app(app(until(), p), f), x) -> app(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))} EDG: {(app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(if(), app(p, x))) (app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(if(), app(p, x)), x)) (app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))) (app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))) (app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(f, x)) (app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(p, x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(p, x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(f, x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(if(), app(p, x)), x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(if(), app(p, x))) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(p, x)) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(f, x)) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(if(), app(p, x)), x)) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(if(), app(p, x)))} SCCS: Scc: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} SCC: Strict: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(f, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} Weak: { app(app(app(if(), true()), x), y) -> x, app(app(app(if(), false()), x), y) -> y, app(app(app(until(), p), f), x) -> app(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))} SPSC: Simple Projection: pi(app#) = 0 Strict: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} EDG: {(app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))) (app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(p, x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(p, x)) (app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)))} SCCS: Scc: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} SCC: Strict: {app#(app(app(until(), p), f), x) -> app#(p, x), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} Weak: { app(app(app(if(), true()), x), y) -> x, app(app(app(if(), false()), x), y) -> y, app(app(app(until(), p), f), x) -> app(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))} SPSC: Simple Projection: pi(app#) = 0 Strict: {app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} EDG: {(app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)), app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x)))} SCCS: Scc: {app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} SCC: Strict: {app#(app(app(until(), p), f), x) -> app#(app(app(until(), p), f), app(f, x))} Weak: { app(app(app(if(), true()), x), y) -> x, app(app(app(if(), false()), x), y) -> y, app(app(app(until(), p), f), x) -> app(app(app(if(), app(p, x)), x), app(app(app(until(), p), f), app(f, x)))} Fail