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