MAYBE TRS: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} DP: Strict: { plus#(x, s(y)) -> plus#(x, y), times#(s(x), y) -> plus#(times(x, y), y), times#(s(x), y) -> times#(x, y), p#(s(s(x))) -> p#(s(x)), fac#(s(x)) -> times#(fac(p(s(x))), s(x)), fac#(s(x)) -> p#(s(x)), fac#(s(x)) -> fac#(p(s(x)))} Weak: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} EDG: {(plus#(x, s(y)) -> plus#(x, y), plus#(x, s(y)) -> plus#(x, y)) (fac#(s(x)) -> times#(fac(p(s(x))), s(x)), times#(s(x), y) -> times#(x, y)) (fac#(s(x)) -> times#(fac(p(s(x))), s(x)), times#(s(x), y) -> plus#(times(x, y), y)) (fac#(s(x)) -> p#(s(x)), p#(s(s(x))) -> p#(s(x))) (times#(s(x), y) -> plus#(times(x, y), y), plus#(x, s(y)) -> plus#(x, y)) (p#(s(s(x))) -> p#(s(x)), p#(s(s(x))) -> p#(s(x))) (times#(s(x), y) -> times#(x, y), times#(s(x), y) -> plus#(times(x, y), y)) (times#(s(x), y) -> times#(x, y), times#(s(x), y) -> times#(x, y)) (fac#(s(x)) -> fac#(p(s(x))), fac#(s(x)) -> times#(fac(p(s(x))), s(x))) (fac#(s(x)) -> fac#(p(s(x))), fac#(s(x)) -> p#(s(x))) (fac#(s(x)) -> fac#(p(s(x))), fac#(s(x)) -> fac#(p(s(x))))} SCCS: Scc: {fac#(s(x)) -> fac#(p(s(x)))} Scc: {p#(s(s(x))) -> p#(s(x))} Scc: {times#(s(x), y) -> times#(x, y)} Scc: {plus#(x, s(y)) -> plus#(x, y)} SCC: Strict: {fac#(s(x)) -> fac#(p(s(x)))} Weak: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} Fail SCC: Strict: {p#(s(s(x))) -> p#(s(x))} Weak: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} SPSC: Simple Projection: pi(p#) = 0 Strict: {} Qed SCC: Strict: {times#(s(x), y) -> times#(x, y)} Weak: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} SPSC: Simple Projection: pi(times#) = 0 Strict: {} Qed SCC: Strict: {plus#(x, s(y)) -> plus#(x, y)} Weak: { plus(x, 0()) -> x, plus(x, s(y)) -> s(plus(x, y)), times(x, 0()) -> 0(), times(0(), y) -> 0(), times(s(x), y) -> plus(times(x, y), y), p(s(0())) -> 0(), p(s(s(x))) -> s(p(s(x))), fac(s(x)) -> times(fac(p(s(x))), s(x))} SPSC: Simple Projection: pi(plus#) = 1 Strict: {} Qed