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