YES Time: 0.008745 TRS: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} DP: DP: {minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(minus(x, y), z) -> plus#(y, z), minus#(s x, s y) -> minus#(x, y), quot#(s x, s y) -> minus#(x, y), quot#(s x, s y) -> quot#(minus(x, y), s y), plus#(s x, y) -> plus#(x, y)} TRS: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} EDG: {(minus#(minus(x, y), z) -> plus#(y, z), plus#(s x, y) -> plus#(x, y)) (quot#(s x, s y) -> minus#(x, y), minus#(s x, s y) -> minus#(x, y)) (quot#(s x, s y) -> minus#(x, y), minus#(minus(x, y), z) -> plus#(y, z)) (quot#(s x, s y) -> minus#(x, y), minus#(minus(x, y), z) -> minus#(x, plus(y, z))) (quot#(s x, s y) -> quot#(minus(x, y), s y), quot#(s x, s y) -> quot#(minus(x, y), s y)) (quot#(s x, s y) -> quot#(minus(x, y), s y), quot#(s x, s y) -> minus#(x, y)) (plus#(s x, y) -> plus#(x, y), plus#(s x, y) -> plus#(x, y)) (minus#(s x, s y) -> minus#(x, y), minus#(minus(x, y), z) -> minus#(x, plus(y, z))) (minus#(s x, s y) -> minus#(x, y), minus#(minus(x, y), z) -> plus#(y, z)) (minus#(s x, s y) -> minus#(x, y), minus#(s x, s y) -> minus#(x, y)) (minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(minus(x, y), z) -> minus#(x, plus(y, z))) (minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(minus(x, y), z) -> plus#(y, z)) (minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(s x, s y) -> minus#(x, y))} SCCS (3): Scc: {plus#(s x, y) -> plus#(x, y)} Scc: {quot#(s x, s y) -> quot#(minus(x, y), s y)} Scc: {minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(s x, s y) -> minus#(x, y)} SCC (1): Strict: {plus#(s x, y) -> plus#(x, y)} Weak: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} SPSC: Simple Projection: pi(plus#) = 0 Strict: {} Qed SCC (1): Strict: {quot#(s x, s y) -> quot#(minus(x, y), s y)} Weak: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} POLY: Mode: weak, max_in=1, output_bits=-1, dnum=1, ur=true Interpretation: [minus](x0, x1) = x0, [quot](x0, x1) = x0 + 1, [plus](x0, x1) = 0, [s](x0) = x0 + 1, [0] = 0, [quot#](x0, x1) = x0 + 1 Strict: quot#(s x, s y) -> quot#(minus(x, y), s y) 2 + 1x + 0y >= 1 + 1x + 0y Weak: Qed SCC (2): Strict: {minus#(minus(x, y), z) -> minus#(x, plus(y, z)), minus#(s x, s y) -> minus#(x, y)} Weak: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} SPSC: Simple Projection: pi(minus#) = 0 Strict: {minus#(s x, s y) -> minus#(x, y)} EDG: {(minus#(s x, s y) -> minus#(x, y), minus#(s x, s y) -> minus#(x, y))} SCCS (1): Scc: {minus#(s x, s y) -> minus#(x, y)} SCC (1): Strict: {minus#(s x, s y) -> minus#(x, y)} Weak: { minus(x, 0()) -> x, minus(minus(x, y), z) -> minus(x, plus(y, z)), minus(s x, s y) -> minus(x, y), quot(0(), s y) -> 0(), quot(s x, s y) -> s quot(minus(x, y), s y), plus(0(), y) -> y, plus(s x, y) -> s plus(x, y)} SPSC: Simple Projection: pi(minus#) = 1 Strict: {} Qed