MAYBE Time: 0.135642 TRS: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} DP: DP: { mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2), mark# U11(X1, X2) -> U11#(mark X1, X2), mark# tt() -> active# tt(), mark# s X -> mark# X, mark# s X -> active# s mark X, mark# s X -> s# mark X, mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> active# plus(mark X1, mark X2), mark# plus(X1, X2) -> plus#(mark X1, mark X2), mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), mark# 0() -> active# 0(), mark# U31 X -> mark# X, mark# U31 X -> active# U31 mark X, mark# U31 X -> U31# mark X, mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> active# x(mark X1, mark X2), mark# x(X1, X2) -> x#(mark X1, mark X2), mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2), mark# and(X1, X2) -> and#(mark X1, X2), mark# isNat X -> active# isNat X, active# U11(tt(), N) -> mark# N, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), active# plus(N, s M) -> and#(isNat M, isNat N), active# plus(N, s M) -> isNat# N, active# plus(N, s M) -> isNat# M, active# plus(N, 0()) -> mark# U11(isNat N, N), active# plus(N, 0()) -> U11#(isNat N, N), active# plus(N, 0()) -> isNat# N, active# U21(tt(), M, N) -> mark# s plus(N, M), active# U21(tt(), M, N) -> s# plus(N, M), active# U21(tt(), M, N) -> plus#(N, M), active# U31 tt() -> mark# 0(), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), active# x(N, s M) -> and#(isNat M, isNat N), active# x(N, s M) -> isNat# N, active# x(N, s M) -> isNat# M, active# x(N, 0()) -> mark# U31 isNat N, active# x(N, 0()) -> U31# isNat N, active# x(N, 0()) -> isNat# N, active# U41(tt(), M, N) -> mark# plus(x(N, M), N), active# U41(tt(), M, N) -> plus#(x(N, M), N), active# U41(tt(), M, N) -> x#(N, M), active# and(tt(), X) -> mark# X, active# isNat s V1 -> mark# isNat V1, active# isNat s V1 -> isNat# V1, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2), active# isNat plus(V1, V2) -> isNat# V1, active# isNat plus(V1, V2) -> isNat# V2, active# isNat 0() -> mark# tt(), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2), active# isNat x(V1, V2) -> isNat# V1, active# isNat x(V1, V2) -> isNat# V2, U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2), s# mark X -> s# X, s# active X -> s# X, plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U31# mark X -> U31# X, U31# active X -> U31# X, x#(X1, mark X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3), and#(X1, mark X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2), isNat# mark X -> isNat# X, isNat# active X -> isNat# X} TRS: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} EDG: { (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(active X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U11#(X1, active X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)) (U11#(X1, active X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2)) (U11#(X1, active X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2)) (U11#(X1, active X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2)) (U11#(active X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)) (U11#(active X1, X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2)) (U11#(active X1, X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2)) (U11#(active X1, X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2)) (plus#(X1, active X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)) (plus#(X1, active X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, active X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2)) (plus#(X1, active X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(active X1, X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)) (plus#(active X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(active X1, X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2)) (plus#(active X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (x#(X1, active X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)) (x#(X1, active X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2)) (x#(X1, active X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2)) (x#(X1, active X2) -> x#(X1, X2), x#(X1, mark X2) -> x#(X1, X2)) (x#(active X1, X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)) (x#(active X1, X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2)) (x#(active X1, X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2)) (x#(active X1, X2) -> x#(X1, X2), x#(X1, mark X2) -> x#(X1, X2)) (and#(X1, active X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)) (and#(X1, active X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2)) (and#(X1, active X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2)) (and#(X1, active X2) -> and#(X1, X2), and#(X1, mark X2) -> and#(X1, X2)) (and#(active X1, X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)) (and#(active X1, X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2)) (and#(active X1, X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2)) (and#(active X1, X2) -> and#(X1, X2), and#(X1, mark X2) -> and#(X1, X2)) (mark# U31 X -> mark# X, mark# isNat X -> active# isNat X) (mark# U31 X -> mark# X, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# U31 X -> mark# X, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# U31 X -> mark# X, mark# and(X1, X2) -> mark# X1) (mark# U31 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# U31 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# U31 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1) (mark# U31 X -> mark# X, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# U31 X -> mark# X, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# U31 X -> mark# X, mark# x(X1, X2) -> mark# X2) (mark# U31 X -> mark# X, mark# x(X1, X2) -> mark# X1) (mark# U31 X -> mark# X, mark# U31 X -> U31# mark X) (mark# U31 X -> mark# X, mark# U31 X -> active# U31 mark X) (mark# U31 X -> mark# X, mark# U31 X -> mark# X) (mark# U31 X -> mark# X, mark# 0() -> active# 0()) (mark# U31 X -> mark# X, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# U31 X -> mark# X, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# U31 X -> mark# X, mark# U21(X1, X2, X3) -> mark# X1) (mark# U31 X -> mark# X, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# U31 X -> mark# X, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# U31 X -> mark# X, mark# plus(X1, X2) -> mark# X2) (mark# U31 X -> mark# X, mark# plus(X1, X2) -> mark# X1) (mark# U31 X -> mark# X, mark# s X -> s# mark X) (mark# U31 X -> mark# X, mark# s X -> active# s mark X) (mark# U31 X -> mark# X, mark# s X -> mark# X) (mark# U31 X -> mark# X, mark# tt() -> active# tt()) (mark# U31 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# U31 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# U31 X -> mark# X, mark# U11(X1, X2) -> mark# X1) (s# mark X -> s# X, s# active X -> s# X) (s# mark X -> s# X, s# mark X -> s# X) (U31# mark X -> U31# X, U31# active X -> U31# X) (U31# mark X -> U31# X, U31# mark X -> U31# X) (isNat# mark X -> isNat# X, isNat# active X -> isNat# X) (isNat# mark X -> isNat# X, isNat# mark X -> isNat# X) (mark# s X -> active# s mark X, active# isNat x(V1, V2) -> isNat# V2) (mark# s X -> active# s mark X, active# isNat x(V1, V2) -> isNat# V1) (mark# s X -> active# s mark X, active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# s X -> active# s mark X, active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# s X -> active# s mark X, active# isNat 0() -> mark# tt()) (mark# s X -> active# s mark X, active# isNat plus(V1, V2) -> isNat# V2) (mark# s X -> active# s mark X, active# isNat plus(V1, V2) -> isNat# V1) (mark# s X -> active# s mark X, active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# s X -> active# s mark X, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# s X -> active# s mark X, active# isNat s V1 -> isNat# V1) (mark# s X -> active# s mark X, active# isNat s V1 -> mark# isNat V1) (mark# s X -> active# s mark X, active# and(tt(), X) -> mark# X) (mark# s X -> active# s mark X, active# U41(tt(), M, N) -> x#(N, M)) (mark# s X -> active# s mark X, active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# s X -> active# s mark X, active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# s X -> active# s mark X, active# x(N, 0()) -> isNat# N) (mark# s X -> active# s mark X, active# x(N, 0()) -> U31# isNat N) (mark# s X -> active# s mark X, active# x(N, 0()) -> mark# U31 isNat N) (mark# s X -> active# s mark X, active# x(N, s M) -> isNat# M) (mark# s X -> active# s mark X, active# x(N, s M) -> isNat# N) (mark# s X -> active# s mark X, active# x(N, s M) -> and#(isNat M, isNat N)) (mark# s X -> active# s mark X, active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# s X -> active# s mark X, active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# s X -> active# s mark X, active# U31 tt() -> mark# 0()) (mark# s X -> active# s mark X, active# U21(tt(), M, N) -> plus#(N, M)) (mark# s X -> active# s mark X, active# U21(tt(), M, N) -> s# plus(N, M)) (mark# s X -> active# s mark X, active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# s X -> active# s mark X, active# plus(N, 0()) -> isNat# N) (mark# s X -> active# s mark X, active# plus(N, 0()) -> U11#(isNat N, N)) (mark# s X -> active# s mark X, active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# s X -> active# s mark X, active# plus(N, s M) -> isNat# M) (mark# s X -> active# s mark X, active# plus(N, s M) -> isNat# N) (mark# s X -> active# s mark X, active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# s X -> active# s mark X, active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# s X -> active# s mark X, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# s X -> active# s mark X, active# U11(tt(), N) -> mark# N) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# isNat X -> active# isNat X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# and(X1, X2) -> and#(mark X1, X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# and(X1, X2) -> mark# X1) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U41(X1, X2, X3) -> mark# X1) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# x(X1, X2) -> mark# X2) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# x(X1, X2) -> mark# X1) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U31 X -> U31# mark X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U31 X -> active# U31 mark X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U31 X -> mark# X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U21(X1, X2, X3) -> mark# X1) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# plus(X1, X2) -> mark# X2) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# plus(X1, X2) -> mark# X1) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# s X -> s# mark X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# s X -> active# s mark X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# s X -> mark# X) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# U21(tt(), M, N) -> mark# s plus(N, M), mark# U11(X1, X2) -> mark# X1) (active# U31 tt() -> mark# 0(), mark# 0() -> active# 0()) (active# U21(tt(), M, N) -> plus#(N, M), plus#(active X1, X2) -> plus#(X1, X2)) (active# U21(tt(), M, N) -> plus#(N, M), plus#(mark X1, X2) -> plus#(X1, X2)) (active# U21(tt(), M, N) -> plus#(N, M), plus#(X1, active X2) -> plus#(X1, X2)) (active# U21(tt(), M, N) -> plus#(N, M), plus#(X1, mark X2) -> plus#(X1, X2)) (mark# plus(X1, X2) -> mark# X2, mark# isNat X -> active# isNat X) (mark# plus(X1, X2) -> mark# X2, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# plus(X1, X2) -> mark# X2, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# plus(X1, X2) -> mark# X2, mark# and(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> mark# X1) (mark# plus(X1, X2) -> mark# X2, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X2, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X2, mark# x(X1, X2) -> mark# X2) (mark# plus(X1, X2) -> mark# X2, mark# x(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X2, mark# U31 X -> U31# mark X) (mark# plus(X1, X2) -> mark# X2, mark# U31 X -> active# U31 mark X) (mark# plus(X1, X2) -> mark# X2, mark# U31 X -> mark# X) (mark# plus(X1, X2) -> mark# X2, mark# 0() -> active# 0()) (mark# plus(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> mark# X1) (mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> mark# X2) (mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X2, mark# s X -> s# mark X) (mark# plus(X1, X2) -> mark# X2, mark# s X -> active# s mark X) (mark# plus(X1, X2) -> mark# X2, mark# s X -> mark# X) (mark# plus(X1, X2) -> mark# X2, mark# tt() -> active# tt()) (mark# plus(X1, X2) -> mark# X2, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# plus(X1, X2) -> mark# X2, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# plus(X1, X2) -> mark# X2, mark# U11(X1, X2) -> mark# X1) (active# plus(N, s M) -> isNat# M, isNat# active X -> isNat# X) (active# plus(N, s M) -> isNat# M, isNat# mark X -> isNat# X) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat x(V1, V2) -> isNat# V2) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat x(V1, V2) -> isNat# V1) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat 0() -> mark# tt()) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat plus(V1, V2) -> isNat# V2) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat plus(V1, V2) -> isNat# V1) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat s V1 -> isNat# V1) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# isNat s V1 -> mark# isNat V1) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# and(tt(), X) -> mark# X) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U41(tt(), M, N) -> x#(N, M)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, 0()) -> isNat# N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, 0()) -> U31# isNat N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, 0()) -> mark# U31 isNat N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, s M) -> isNat# M) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, s M) -> isNat# N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U31 tt() -> mark# 0()) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U21(tt(), M, N) -> plus#(N, M)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, 0()) -> isNat# N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, s M) -> isNat# M) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, s M) -> isNat# N) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U11(tt(), N) -> mark# N) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# isNat X -> active# isNat X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# and(X1, X2) -> and#(mark X1, X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# and(X1, X2) -> mark# X1) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U41(X1, X2, X3) -> mark# X1) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# x(X1, X2) -> mark# X2) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# x(X1, X2) -> mark# X1) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U31 X -> U31# mark X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U31 X -> active# U31 mark X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U31 X -> mark# X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U21(X1, X2, X3) -> mark# X1) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# plus(X1, X2) -> mark# X2) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# plus(X1, X2) -> mark# X1) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# s X -> s# mark X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# s X -> active# s mark X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# s X -> mark# X) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# plus(N, 0()) -> mark# U11(isNat N, N), mark# U11(X1, X2) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# isNat X -> active# isNat X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# and(X1, X2) -> and#(mark X1, X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# and(X1, X2) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U41(X1, X2, X3) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# x(X1, X2) -> mark# X2) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# x(X1, X2) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U31 X -> U31# mark X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U31 X -> active# U31 mark X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U31 X -> mark# X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U21(X1, X2, X3) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# plus(X1, X2) -> mark# X2) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# plus(X1, X2) -> mark# X1) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# s X -> s# mark X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# s X -> active# s mark X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# s X -> mark# X) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# U41(tt(), M, N) -> mark# plus(x(N, M), N), mark# U11(X1, X2) -> mark# X1) (mark# s X -> s# mark X, s# active X -> s# X) (mark# s X -> s# mark X, s# mark X -> s# X) (mark# isNat X -> active# isNat X, active# isNat x(V1, V2) -> isNat# V2) (mark# isNat X -> active# isNat X, active# isNat x(V1, V2) -> isNat# V1) (mark# isNat X -> active# isNat X, active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# isNat X -> active# isNat X, active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# isNat X -> active# isNat X, active# isNat 0() -> mark# tt()) (mark# isNat X -> active# isNat X, active# isNat plus(V1, V2) -> isNat# V2) (mark# isNat X -> active# isNat X, active# isNat plus(V1, V2) -> isNat# V1) (mark# isNat X -> active# isNat X, active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# isNat X -> active# isNat X, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# isNat X -> active# isNat X, active# isNat s V1 -> isNat# V1) (mark# isNat X -> active# isNat X, active# isNat s V1 -> mark# isNat V1) (mark# isNat X -> active# isNat X, active# and(tt(), X) -> mark# X) (mark# isNat X -> active# isNat X, active# U41(tt(), M, N) -> x#(N, M)) (mark# isNat X -> active# isNat X, active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# isNat X -> active# isNat X, active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# isNat X -> active# isNat X, active# x(N, 0()) -> isNat# N) (mark# isNat X -> active# isNat X, active# x(N, 0()) -> U31# isNat N) (mark# isNat X -> active# isNat X, active# x(N, 0()) -> mark# U31 isNat N) (mark# isNat X -> active# isNat X, active# x(N, s M) -> isNat# M) (mark# isNat X -> active# isNat X, active# x(N, s M) -> isNat# N) (mark# isNat X -> active# isNat X, active# x(N, s M) -> and#(isNat M, isNat N)) (mark# isNat X -> active# isNat X, active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# isNat X -> active# isNat X, active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# isNat X -> active# isNat X, active# U31 tt() -> mark# 0()) (mark# isNat X -> active# isNat X, active# U21(tt(), M, N) -> plus#(N, M)) (mark# isNat X -> active# isNat X, active# U21(tt(), M, N) -> s# plus(N, M)) (mark# isNat X -> active# isNat X, active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# isNat X -> active# isNat X, active# plus(N, 0()) -> isNat# N) (mark# isNat X -> active# isNat X, active# plus(N, 0()) -> U11#(isNat N, N)) (mark# isNat X -> active# isNat X, active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# isNat X -> active# isNat X, active# plus(N, s M) -> isNat# M) (mark# isNat X -> active# isNat X, active# plus(N, s M) -> isNat# N) (mark# isNat X -> active# isNat X, active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# isNat X -> active# isNat X, active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# isNat X -> active# isNat X, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# isNat X -> active# isNat X, active# U11(tt(), N) -> mark# N) (mark# U11(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X) (mark# U11(X1, X2) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# U11(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# U11(X1, X2) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# U11(X1, X2) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# U11(X1, X2) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# U11(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# U11(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# U11(X1, X2) -> mark# X1, mark# U31 X -> U31# mark X) (mark# U11(X1, X2) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# U11(X1, X2) -> mark# X1, mark# U31 X -> mark# X) (mark# U11(X1, X2) -> mark# X1, mark# 0() -> active# 0()) (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# U11(X1, X2) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# U11(X1, X2) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# U11(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# U11(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# U11(X1, X2) -> mark# X1, mark# s X -> s# mark X) (mark# U11(X1, X2) -> mark# X1, mark# s X -> active# s mark X) (mark# U11(X1, X2) -> mark# X1, mark# s X -> mark# X) (mark# U11(X1, X2) -> mark# X1, mark# tt() -> active# tt()) (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X) (mark# U21(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# U21(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# U31 X -> U31# mark X) (mark# U21(X1, X2, X3) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# U21(X1, X2, X3) -> mark# X1, mark# U31 X -> mark# X) (mark# U21(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0()) (mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# U21(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# U21(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X) (mark# U21(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X) (mark# U21(X1, X2, X3) -> mark# X1, mark# s X -> mark# X) (mark# U21(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt()) (mark# U21(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# U21(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X) (mark# U41(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# U41(X1, X2, X3) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# U31 X -> U31# mark X) (mark# U41(X1, X2, X3) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# U41(X1, X2, X3) -> mark# X1, mark# U31 X -> mark# X) (mark# U41(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0()) (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# U41(X1, X2, X3) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X) (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X) (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> mark# X) (mark# U41(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt()) (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat x(V1, V2) -> isNat# V2) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat x(V1, V2) -> isNat# V1) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat 0() -> mark# tt()) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat plus(V1, V2) -> isNat# V2) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat plus(V1, V2) -> isNat# V1) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat s V1 -> isNat# V1) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# isNat s V1 -> mark# isNat V1) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# and(tt(), X) -> mark# X) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U41(tt(), M, N) -> x#(N, M)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, 0()) -> isNat# N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, 0()) -> U31# isNat N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, 0()) -> mark# U31 isNat N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, s M) -> isNat# M) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, s M) -> isNat# N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U31 tt() -> mark# 0()) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U21(tt(), M, N) -> plus#(N, M)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, 0()) -> isNat# N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, s M) -> isNat# M) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, s M) -> isNat# N) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# plus(X1, X2) -> active# plus(mark X1, mark X2), active# U11(tt(), N) -> mark# N) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# isNat X -> active# isNat X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> and#(mark X1, X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> mark# X1) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> mark# X1) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> mark# X2) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> mark# X1) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> U31# mark X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> active# U31 mark X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> mark# X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> mark# X1) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> mark# X2) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> mark# X1) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> s# mark X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> active# s mark X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> mark# X) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# isNat X -> active# isNat X) (active# U11(tt(), N) -> mark# N, mark# and(X1, X2) -> and#(mark X1, X2)) (active# U11(tt(), N) -> mark# N, mark# and(X1, X2) -> active# and(mark X1, X2)) (active# U11(tt(), N) -> mark# N, mark# and(X1, X2) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# U11(tt(), N) -> mark# N, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# U11(tt(), N) -> mark# N, mark# U41(X1, X2, X3) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# U11(tt(), N) -> mark# N, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# U11(tt(), N) -> mark# N, mark# x(X1, X2) -> mark# X2) (active# U11(tt(), N) -> mark# N, mark# x(X1, X2) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# U31 X -> U31# mark X) (active# U11(tt(), N) -> mark# N, mark# U31 X -> active# U31 mark X) (active# U11(tt(), N) -> mark# N, mark# U31 X -> mark# X) (active# U11(tt(), N) -> mark# N, mark# 0() -> active# 0()) (active# U11(tt(), N) -> mark# N, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# U11(tt(), N) -> mark# N, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# U11(tt(), N) -> mark# N, mark# U21(X1, X2, X3) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# U11(tt(), N) -> mark# N, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# U11(tt(), N) -> mark# N, mark# plus(X1, X2) -> mark# X2) (active# U11(tt(), N) -> mark# N, mark# plus(X1, X2) -> mark# X1) (active# U11(tt(), N) -> mark# N, mark# s X -> s# mark X) (active# U11(tt(), N) -> mark# N, mark# s X -> active# s mark X) (active# U11(tt(), N) -> mark# N, mark# s X -> mark# X) (active# U11(tt(), N) -> mark# N, mark# tt() -> active# tt()) (active# U11(tt(), N) -> mark# N, mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# U11(tt(), N) -> mark# N, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# U11(tt(), N) -> mark# N, mark# U11(X1, X2) -> mark# X1) (active# plus(N, 0()) -> isNat# N, isNat# active X -> isNat# X) (active# plus(N, 0()) -> isNat# N, isNat# mark X -> isNat# X) (active# x(N, 0()) -> isNat# N, isNat# active X -> isNat# X) (active# x(N, 0()) -> isNat# N, isNat# mark X -> isNat# X) (active# isNat x(V1, V2) -> isNat# V2, isNat# active X -> isNat# X) (active# isNat x(V1, V2) -> isNat# V2, isNat# mark X -> isNat# X) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat x(V1, V2) -> isNat# V2) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat x(V1, V2) -> isNat# V1) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat 0() -> mark# tt()) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat plus(V1, V2) -> isNat# V2) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat plus(V1, V2) -> isNat# V1) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat s V1 -> isNat# V1) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# isNat s V1 -> mark# isNat V1) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# and(tt(), X) -> mark# X) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), M, N) -> x#(N, M)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, 0()) -> isNat# N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, 0()) -> U31# isNat N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, 0()) -> mark# U31 isNat N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, s M) -> isNat# M) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, s M) -> isNat# N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U31 tt() -> mark# 0()) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U21(tt(), M, N) -> plus#(N, M)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, 0()) -> isNat# N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, s M) -> isNat# M) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, s M) -> isNat# N) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U11(tt(), N) -> mark# N) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# isNat X -> active# isNat X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> and#(mark X1, X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> mark# X1) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> mark# X1) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> mark# X2) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> mark# X1) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U31 X -> U31# mark X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U31 X -> active# U31 mark X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U31 X -> mark# X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> mark# X1) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> mark# X2) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> mark# X1) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# s X -> s# mark X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# s X -> active# s mark X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# s X -> mark# X) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> mark# X1) (active# isNat plus(V1, V2) -> isNat# V1, isNat# active X -> isNat# X) (active# isNat plus(V1, V2) -> isNat# V1, isNat# mark X -> isNat# X) (active# plus(N, 0()) -> U11#(isNat N, N), U11#(active X1, X2) -> U11#(X1, X2)) (active# plus(N, 0()) -> U11#(isNat N, N), U11#(mark X1, X2) -> U11#(X1, X2)) (active# plus(N, 0()) -> U11#(isNat N, N), U11#(X1, active X2) -> U11#(X1, X2)) (active# plus(N, 0()) -> U11#(isNat N, N), U11#(X1, mark X2) -> U11#(X1, X2)) (mark# plus(X1, X2) -> plus#(mark X1, mark X2), plus#(active X1, X2) -> plus#(X1, X2)) (mark# plus(X1, X2) -> plus#(mark X1, mark X2), plus#(mark X1, X2) -> plus#(X1, X2)) (mark# plus(X1, X2) -> plus#(mark X1, mark X2), plus#(X1, active X2) -> plus#(X1, X2)) (mark# plus(X1, X2) -> plus#(mark X1, mark X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# plus(N, s M) -> and#(isNat M, isNat N), and#(active X1, X2) -> and#(X1, X2)) (active# plus(N, s M) -> and#(isNat M, isNat N), and#(mark X1, X2) -> and#(X1, X2)) (active# plus(N, s M) -> and#(isNat M, isNat N), and#(X1, active X2) -> and#(X1, X2)) (active# plus(N, s M) -> and#(isNat M, isNat N), and#(X1, mark X2) -> and#(X1, X2)) (active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2), and#(active X1, X2) -> and#(X1, X2)) (active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2), and#(mark X1, X2) -> and#(X1, X2)) (active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2), and#(X1, active X2) -> and#(X1, X2)) (active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2), and#(X1, mark X2) -> and#(X1, X2)) (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(active X1, X2) -> U11#(X1, X2)) (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(mark X1, X2) -> U11#(X1, X2)) (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(X1, active X2) -> U11#(X1, X2)) (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(X1, mark X2) -> U11#(X1, X2)) (mark# and(X1, X2) -> and#(mark X1, X2), and#(X1, mark X2) -> and#(X1, X2)) (mark# and(X1, X2) -> and#(mark X1, X2), and#(X1, active X2) -> and#(X1, X2)) (mark# and(X1, X2) -> and#(mark X1, X2), and#(mark X1, X2) -> and#(X1, X2)) (mark# and(X1, X2) -> and#(mark X1, X2), and#(active X1, X2) -> and#(X1, X2)) (active# isNat x(V1, V2) -> and#(isNat V1, isNat V2), and#(X1, mark X2) -> and#(X1, X2)) (active# isNat x(V1, V2) -> and#(isNat V1, isNat V2), and#(X1, active X2) -> and#(X1, X2)) (active# isNat x(V1, V2) -> and#(isNat V1, isNat V2), and#(mark X1, X2) -> and#(X1, X2)) (active# isNat x(V1, V2) -> and#(isNat V1, isNat V2), and#(active X1, X2) -> and#(X1, X2)) (active# x(N, s M) -> and#(isNat M, isNat N), and#(X1, mark X2) -> and#(X1, X2)) (active# x(N, s M) -> and#(isNat M, isNat N), and#(X1, active X2) -> and#(X1, X2)) (active# x(N, s M) -> and#(isNat M, isNat N), and#(mark X1, X2) -> and#(X1, X2)) (active# x(N, s M) -> and#(isNat M, isNat N), and#(active X1, X2) -> and#(X1, X2)) (mark# x(X1, X2) -> x#(mark X1, mark X2), x#(X1, mark X2) -> x#(X1, X2)) (mark# x(X1, X2) -> x#(mark X1, mark X2), x#(X1, active X2) -> x#(X1, X2)) (mark# x(X1, X2) -> x#(mark X1, mark X2), x#(mark X1, X2) -> x#(X1, X2)) (mark# x(X1, X2) -> x#(mark X1, mark X2), x#(active X1, X2) -> x#(X1, X2)) (active# U41(tt(), M, N) -> plus#(x(N, M), N), plus#(X1, mark X2) -> plus#(X1, X2)) (active# U41(tt(), M, N) -> plus#(x(N, M), N), plus#(X1, active X2) -> plus#(X1, X2)) (active# U41(tt(), M, N) -> plus#(x(N, M), N), plus#(mark X1, X2) -> plus#(X1, X2)) (active# U41(tt(), M, N) -> plus#(x(N, M), N), plus#(active X1, X2) -> plus#(X1, X2)) (active# isNat x(V1, V2) -> isNat# V1, isNat# mark X -> isNat# X) (active# isNat x(V1, V2) -> isNat# V1, isNat# active X -> isNat# X) (active# isNat s V1 -> isNat# V1, isNat# mark X -> isNat# X) (active# isNat s V1 -> isNat# V1, isNat# active X -> isNat# X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# s X -> mark# X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# s X -> active# s mark X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# s X -> s# mark X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> mark# X2) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U31 X -> mark# X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U31 X -> active# U31 mark X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U31 X -> U31# mark X) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> mark# X2) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> mark# X1) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# and(X1, X2) -> and#(mark X1, X2)) (active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), mark# isNat X -> active# isNat X) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U11(tt(), N) -> mark# N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, s M) -> isNat# N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, s M) -> isNat# M) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# plus(N, 0()) -> isNat# N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U21(tt(), M, N) -> plus#(N, M)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U31 tt() -> mark# 0()) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, s M) -> isNat# N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, s M) -> isNat# M) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, 0()) -> mark# U31 isNat N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, 0()) -> U31# isNat N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# x(N, 0()) -> isNat# N) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# U41(tt(), M, N) -> x#(N, M)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# and(tt(), X) -> mark# X) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat s V1 -> mark# isNat V1) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat s V1 -> isNat# V1) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat plus(V1, V2) -> isNat# V1) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat plus(V1, V2) -> isNat# V2) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat 0() -> mark# tt()) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat x(V1, V2) -> isNat# V1) (mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), active# isNat x(V1, V2) -> isNat# V2) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (active# isNat plus(V1, V2) -> isNat# V2, isNat# mark X -> isNat# X) (active# isNat plus(V1, V2) -> isNat# V2, isNat# active X -> isNat# X) (active# x(N, s M) -> isNat# N, isNat# mark X -> isNat# X) (active# x(N, s M) -> isNat# N, isNat# active X -> isNat# X) (active# plus(N, s M) -> isNat# N, isNat# mark X -> isNat# X) (active# plus(N, s M) -> isNat# N, isNat# active X -> isNat# X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> mark# X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> active# s mark X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# s X -> s# mark X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> mark# X2) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> mark# X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> active# U31 mark X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U31 X -> U31# mark X) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> mark# X2) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> mark# X1) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> active# and(mark X1, X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# and(X1, X2) -> and#(mark X1, X2)) (active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2), mark# isNat X -> active# isNat X) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U11(tt(), N) -> mark# N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, s M) -> isNat# N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, s M) -> isNat# M) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# plus(N, 0()) -> isNat# N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U21(tt(), M, N) -> plus#(N, M)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U31 tt() -> mark# 0()) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, s M) -> isNat# N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, s M) -> isNat# M) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, 0()) -> mark# U31 isNat N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, 0()) -> U31# isNat N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# x(N, 0()) -> isNat# N) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# U41(tt(), M, N) -> x#(N, M)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# and(tt(), X) -> mark# X) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat s V1 -> mark# isNat V1) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat s V1 -> isNat# V1) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat plus(V1, V2) -> isNat# V1) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat plus(V1, V2) -> isNat# V2) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat 0() -> mark# tt()) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat x(V1, V2) -> isNat# V1) (mark# x(X1, X2) -> active# x(mark X1, mark X2), active# isNat x(V1, V2) -> isNat# V2) (mark# and(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# and(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# and(X1, X2) -> mark# X1, mark# tt() -> active# tt()) (mark# and(X1, X2) -> mark# X1, mark# s X -> mark# X) (mark# and(X1, X2) -> mark# X1, mark# s X -> active# s mark X) (mark# and(X1, X2) -> mark# X1, mark# s X -> s# mark X) (mark# and(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# and(X1, X2) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# and(X1, X2) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# and(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# and(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# and(X1, X2) -> mark# X1, mark# 0() -> active# 0()) (mark# and(X1, X2) -> mark# X1, mark# U31 X -> mark# X) (mark# and(X1, X2) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# and(X1, X2) -> mark# X1, mark# U31 X -> U31# mark X) (mark# and(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# and(X1, X2) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# and(X1, X2) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# and(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# and(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# and(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X) (mark# x(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# x(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# x(X1, X2) -> mark# X1, mark# tt() -> active# tt()) (mark# x(X1, X2) -> mark# X1, mark# s X -> mark# X) (mark# x(X1, X2) -> mark# X1, mark# s X -> active# s mark X) (mark# x(X1, X2) -> mark# X1, mark# s X -> s# mark X) (mark# x(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# x(X1, X2) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X1, mark# 0() -> active# 0()) (mark# x(X1, X2) -> mark# X1, mark# U31 X -> mark# X) (mark# x(X1, X2) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# x(X1, X2) -> mark# X1, mark# U31 X -> U31# mark X) (mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# x(X1, X2) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# x(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X) (mark# plus(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# plus(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# plus(X1, X2) -> mark# X1, mark# tt() -> active# tt()) (mark# plus(X1, X2) -> mark# X1, mark# s X -> mark# X) (mark# plus(X1, X2) -> mark# X1, mark# s X -> active# s mark X) (mark# plus(X1, X2) -> mark# X1, mark# s X -> s# mark X) (mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2) (mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X1, mark# 0() -> active# 0()) (mark# plus(X1, X2) -> mark# X1, mark# U31 X -> mark# X) (mark# plus(X1, X2) -> mark# X1, mark# U31 X -> active# U31 mark X) (mark# plus(X1, X2) -> mark# X1, mark# U31 X -> U31# mark X) (mark# plus(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2) (mark# plus(X1, X2) -> mark# X1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# plus(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# plus(X1, X2) -> mark# X1, mark# and(X1, X2) -> mark# X1) (mark# plus(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# plus(X1, X2) -> mark# X1, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# plus(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X) (active# x(N, 0()) -> U31# isNat N, U31# mark X -> U31# X) (active# x(N, 0()) -> U31# isNat N, U31# active X -> U31# X) (mark# U31 X -> U31# mark X, U31# mark X -> U31# X) (mark# U31 X -> U31# mark X, U31# active X -> U31# X) (active# isNat s V1 -> mark# isNat V1, mark# U11(X1, X2) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# isNat s V1 -> mark# isNat V1, mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# isNat s V1 -> mark# isNat V1, mark# s X -> mark# X) (active# isNat s V1 -> mark# isNat V1, mark# s X -> active# s mark X) (active# isNat s V1 -> mark# isNat V1, mark# s X -> s# mark X) (active# isNat s V1 -> mark# isNat V1, mark# plus(X1, X2) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# plus(X1, X2) -> mark# X2) (active# isNat s V1 -> mark# isNat V1, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# isNat s V1 -> mark# isNat V1, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# isNat s V1 -> mark# isNat V1, mark# U21(X1, X2, X3) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# isNat s V1 -> mark# isNat V1, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# isNat s V1 -> mark# isNat V1, mark# U31 X -> mark# X) (active# isNat s V1 -> mark# isNat V1, mark# U31 X -> active# U31 mark X) (active# isNat s V1 -> mark# isNat V1, mark# U31 X -> U31# mark X) (active# isNat s V1 -> mark# isNat V1, mark# x(X1, X2) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# x(X1, X2) -> mark# X2) (active# isNat s V1 -> mark# isNat V1, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# isNat s V1 -> mark# isNat V1, mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# isNat s V1 -> mark# isNat V1, mark# U41(X1, X2, X3) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# isNat s V1 -> mark# isNat V1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# isNat s V1 -> mark# isNat V1, mark# and(X1, X2) -> mark# X1) (active# isNat s V1 -> mark# isNat V1, mark# and(X1, X2) -> active# and(mark X1, X2)) (active# isNat s V1 -> mark# isNat V1, mark# and(X1, X2) -> and#(mark X1, X2)) (active# isNat s V1 -> mark# isNat V1, mark# isNat X -> active# isNat X) (active# U21(tt(), M, N) -> s# plus(N, M), s# mark X -> s# X) (active# U21(tt(), M, N) -> s# plus(N, M), s# active X -> s# X) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U11(tt(), N) -> mark# N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, s M) -> isNat# N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, s M) -> isNat# M) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, 0()) -> U11#(isNat N, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# plus(N, 0()) -> isNat# N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U21(tt(), M, N) -> s# plus(N, M)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U21(tt(), M, N) -> plus#(N, M)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U31 tt() -> mark# 0()) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, s M) -> and#(isNat M, isNat N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, s M) -> isNat# N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, s M) -> isNat# M) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, 0()) -> mark# U31 isNat N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, 0()) -> U31# isNat N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# x(N, 0()) -> isNat# N) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# U41(tt(), M, N) -> x#(N, M)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# and(tt(), X) -> mark# X) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat s V1 -> mark# isNat V1) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat s V1 -> isNat# V1) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat plus(V1, V2) -> isNat# V1) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat plus(V1, V2) -> isNat# V2) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat 0() -> mark# tt()) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat x(V1, V2) -> isNat# V1) (mark# and(X1, X2) -> active# and(mark X1, X2), active# isNat x(V1, V2) -> isNat# V2) (active# x(N, s M) -> isNat# M, isNat# mark X -> isNat# X) (active# x(N, s M) -> isNat# M, isNat# active X -> isNat# X) (mark# x(X1, X2) -> mark# X2, mark# U11(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# x(X1, X2) -> mark# X2, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# x(X1, X2) -> mark# X2, mark# tt() -> active# tt()) (mark# x(X1, X2) -> mark# X2, mark# s X -> mark# X) (mark# x(X1, X2) -> mark# X2, mark# s X -> active# s mark X) (mark# x(X1, X2) -> mark# X2, mark# s X -> s# mark X) (mark# x(X1, X2) -> mark# X2, mark# plus(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# plus(X1, X2) -> mark# X2) (mark# x(X1, X2) -> mark# X2, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X2, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X2, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X2, mark# 0() -> active# 0()) (mark# x(X1, X2) -> mark# X2, mark# U31 X -> mark# X) (mark# x(X1, X2) -> mark# X2, mark# U31 X -> active# U31 mark X) (mark# x(X1, X2) -> mark# X2, mark# U31 X -> U31# mark X) (mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> mark# X2) (mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# x(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# x(X1, X2) -> mark# X2, mark# and(X1, X2) -> mark# X1) (mark# x(X1, X2) -> mark# X2, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# x(X1, X2) -> mark# X2, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# x(X1, X2) -> mark# X2, mark# isNat X -> active# isNat X) (active# U41(tt(), M, N) -> x#(N, M), x#(X1, mark X2) -> x#(X1, X2)) (active# U41(tt(), M, N) -> x#(N, M), x#(X1, active X2) -> x#(X1, X2)) (active# U41(tt(), M, N) -> x#(N, M), x#(mark X1, X2) -> x#(X1, X2)) (active# U41(tt(), M, N) -> x#(N, M), x#(active X1, X2) -> x#(X1, X2)) (active# isNat 0() -> mark# tt(), mark# tt() -> active# tt()) (active# x(N, 0()) -> mark# U31 isNat N, mark# U11(X1, X2) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# s X -> mark# X) (active# x(N, 0()) -> mark# U31 isNat N, mark# s X -> active# s mark X) (active# x(N, 0()) -> mark# U31 isNat N, mark# s X -> s# mark X) (active# x(N, 0()) -> mark# U31 isNat N, mark# plus(X1, X2) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# plus(X1, X2) -> mark# X2) (active# x(N, 0()) -> mark# U31 isNat N, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U21(X1, X2, X3) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U31 X -> mark# X) (active# x(N, 0()) -> mark# U31 isNat N, mark# U31 X -> active# U31 mark X) (active# x(N, 0()) -> mark# U31 isNat N, mark# U31 X -> U31# mark X) (active# x(N, 0()) -> mark# U31 isNat N, mark# x(X1, X2) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# x(X1, X2) -> mark# X2) (active# x(N, 0()) -> mark# U31 isNat N, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U41(X1, X2, X3) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# x(N, 0()) -> mark# U31 isNat N, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# x(N, 0()) -> mark# U31 isNat N, mark# and(X1, X2) -> mark# X1) (active# x(N, 0()) -> mark# U31 isNat N, mark# and(X1, X2) -> active# and(mark X1, X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# and(X1, X2) -> and#(mark X1, X2)) (active# x(N, 0()) -> mark# U31 isNat N, mark# isNat X -> active# isNat X) (mark# U31 X -> active# U31 mark X, active# U11(tt(), N) -> mark# N) (mark# U31 X -> active# U31 mark X, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N)) (mark# U31 X -> active# U31 mark X, active# plus(N, s M) -> U21#(and(isNat M, isNat N), M, N)) (mark# U31 X -> active# U31 mark X, active# plus(N, s M) -> and#(isNat M, isNat N)) (mark# U31 X -> active# U31 mark X, active# plus(N, s M) -> isNat# N) (mark# U31 X -> active# U31 mark X, active# plus(N, s M) -> isNat# M) (mark# U31 X -> active# U31 mark X, active# plus(N, 0()) -> mark# U11(isNat N, N)) (mark# U31 X -> active# U31 mark X, active# plus(N, 0()) -> U11#(isNat N, N)) (mark# U31 X -> active# U31 mark X, active# plus(N, 0()) -> isNat# N) (mark# U31 X -> active# U31 mark X, active# U21(tt(), M, N) -> mark# s plus(N, M)) (mark# U31 X -> active# U31 mark X, active# U21(tt(), M, N) -> s# plus(N, M)) (mark# U31 X -> active# U31 mark X, active# U21(tt(), M, N) -> plus#(N, M)) (mark# U31 X -> active# U31 mark X, active# U31 tt() -> mark# 0()) (mark# U31 X -> active# U31 mark X, active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N)) (mark# U31 X -> active# U31 mark X, active# x(N, s M) -> U41#(and(isNat M, isNat N), M, N)) (mark# U31 X -> active# U31 mark X, active# x(N, s M) -> and#(isNat M, isNat N)) (mark# U31 X -> active# U31 mark X, active# x(N, s M) -> isNat# N) (mark# U31 X -> active# U31 mark X, active# x(N, s M) -> isNat# M) (mark# U31 X -> active# U31 mark X, active# x(N, 0()) -> mark# U31 isNat N) (mark# U31 X -> active# U31 mark X, active# x(N, 0()) -> U31# isNat N) (mark# U31 X -> active# U31 mark X, active# x(N, 0()) -> isNat# N) (mark# U31 X -> active# U31 mark X, active# U41(tt(), M, N) -> mark# plus(x(N, M), N)) (mark# U31 X -> active# U31 mark X, active# U41(tt(), M, N) -> plus#(x(N, M), N)) (mark# U31 X -> active# U31 mark X, active# U41(tt(), M, N) -> x#(N, M)) (mark# U31 X -> active# U31 mark X, active# and(tt(), X) -> mark# X) (mark# U31 X -> active# U31 mark X, active# isNat s V1 -> mark# isNat V1) (mark# U31 X -> active# U31 mark X, active# isNat s V1 -> isNat# V1) (mark# U31 X -> active# U31 mark X, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U31 X -> active# U31 mark X, active# isNat plus(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U31 X -> active# U31 mark X, active# isNat plus(V1, V2) -> isNat# V1) (mark# U31 X -> active# U31 mark X, active# isNat plus(V1, V2) -> isNat# V2) (mark# U31 X -> active# U31 mark X, active# isNat 0() -> mark# tt()) (mark# U31 X -> active# U31 mark X, active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)) (mark# U31 X -> active# U31 mark X, active# isNat x(V1, V2) -> and#(isNat V1, isNat V2)) (mark# U31 X -> active# U31 mark X, active# isNat x(V1, V2) -> isNat# V1) (mark# U31 X -> active# U31 mark X, active# isNat x(V1, V2) -> isNat# V2) (isNat# active X -> isNat# X, isNat# mark X -> isNat# X) (isNat# active X -> isNat# X, isNat# active X -> isNat# X) (U31# active X -> U31# X, U31# mark X -> U31# X) (U31# active X -> U31# X, U31# active X -> U31# X) (s# active X -> s# X, s# mark X -> s# X) (s# active X -> s# X, s# active X -> s# X) (active# and(tt(), X) -> mark# X, mark# U11(X1, X2) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (active# and(tt(), X) -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2)) (active# and(tt(), X) -> mark# X, mark# tt() -> active# tt()) (active# and(tt(), X) -> mark# X, mark# s X -> mark# X) (active# and(tt(), X) -> mark# X, mark# s X -> active# s mark X) (active# and(tt(), X) -> mark# X, mark# s X -> s# mark X) (active# and(tt(), X) -> mark# X, mark# plus(X1, X2) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# plus(X1, X2) -> mark# X2) (active# and(tt(), X) -> mark# X, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (active# and(tt(), X) -> mark# X, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (active# and(tt(), X) -> mark# X, mark# U21(X1, X2, X3) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (active# and(tt(), X) -> mark# X, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (active# and(tt(), X) -> mark# X, mark# 0() -> active# 0()) (active# and(tt(), X) -> mark# X, mark# U31 X -> mark# X) (active# and(tt(), X) -> mark# X, mark# U31 X -> active# U31 mark X) (active# and(tt(), X) -> mark# X, mark# U31 X -> U31# mark X) (active# and(tt(), X) -> mark# X, mark# x(X1, X2) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# x(X1, X2) -> mark# X2) (active# and(tt(), X) -> mark# X, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (active# and(tt(), X) -> mark# X, mark# x(X1, X2) -> x#(mark X1, mark X2)) (active# and(tt(), X) -> mark# X, mark# U41(X1, X2, X3) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (active# and(tt(), X) -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (active# and(tt(), X) -> mark# X, mark# and(X1, X2) -> mark# X1) (active# and(tt(), X) -> mark# X, mark# and(X1, X2) -> active# and(mark X1, X2)) (active# and(tt(), X) -> mark# X, mark# and(X1, X2) -> and#(mark X1, X2)) (active# and(tt(), X) -> mark# X, mark# isNat X -> active# isNat X) (mark# s X -> mark# X, mark# U11(X1, X2) -> mark# X1) (mark# s X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2)) (mark# s X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2)) (mark# s X -> mark# X, mark# tt() -> active# tt()) (mark# s X -> mark# X, mark# s X -> mark# X) (mark# s X -> mark# X, mark# s X -> active# s mark X) (mark# s X -> mark# X, mark# s X -> s# mark X) (mark# s X -> mark# X, mark# plus(X1, X2) -> mark# X1) (mark# s X -> mark# X, mark# plus(X1, X2) -> mark# X2) (mark# s X -> mark# X, mark# plus(X1, X2) -> active# plus(mark X1, mark X2)) (mark# s X -> mark# X, mark# plus(X1, X2) -> plus#(mark X1, mark X2)) (mark# s X -> mark# X, mark# U21(X1, X2, X3) -> mark# X1) (mark# s X -> mark# X, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3)) (mark# s X -> mark# X, mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3)) (mark# s X -> mark# X, mark# 0() -> active# 0()) (mark# s X -> mark# X, mark# U31 X -> mark# X) (mark# s X -> mark# X, mark# U31 X -> active# U31 mark X) (mark# s X -> mark# X, mark# U31 X -> U31# mark X) (mark# s X -> mark# X, mark# x(X1, X2) -> mark# X1) (mark# s X -> mark# X, mark# x(X1, X2) -> mark# X2) (mark# s X -> mark# X, mark# x(X1, X2) -> active# x(mark X1, mark X2)) (mark# s X -> mark# X, mark# x(X1, X2) -> x#(mark X1, mark X2)) (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1) (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3)) (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3)) (mark# s X -> mark# X, mark# and(X1, X2) -> mark# X1) (mark# s X -> mark# X, mark# and(X1, X2) -> active# and(mark X1, X2)) (mark# s X -> mark# X, mark# and(X1, X2) -> and#(mark X1, X2)) (mark# s X -> mark# X, mark# isNat X -> active# isNat X) (and#(mark X1, X2) -> and#(X1, X2), and#(X1, mark X2) -> and#(X1, X2)) (and#(mark X1, X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2)) (and#(mark X1, X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2)) (and#(mark X1, X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)) (and#(X1, mark X2) -> and#(X1, X2), and#(X1, mark X2) -> and#(X1, X2)) (and#(X1, mark X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2)) (and#(X1, mark X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2)) (and#(X1, mark X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)) (x#(mark X1, X2) -> x#(X1, X2), x#(X1, mark X2) -> x#(X1, X2)) (x#(mark X1, X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2)) (x#(mark X1, X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2)) (x#(mark X1, X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)) (x#(X1, mark X2) -> x#(X1, X2), x#(X1, mark X2) -> x#(X1, X2)) (x#(X1, mark X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2)) (x#(X1, mark X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2)) (x#(X1, mark X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)) (U11#(mark X1, X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2)) (U11#(mark X1, X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2)) (U11#(mark X1, X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2)) (U11#(mark X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)) (U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2)) (U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2)) (U11#(X1, mark X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2)) (U11#(X1, mark X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(X1, X2, mark X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3)) (mark# U21(X1, X2, X3) -> U21#(mark X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)) } STATUS: arrows: 0.880931 SCCS (10): Scc: { mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2), mark# s X -> mark# X, mark# s X -> active# s mark X, mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> active# plus(mark X1, mark X2), mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), mark# U31 X -> mark# X, mark# U31 X -> active# U31 mark X, mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> active# x(mark X1, mark X2), mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2), mark# isNat X -> active# isNat X, active# U11(tt(), N) -> mark# N, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), active# plus(N, 0()) -> mark# U11(isNat N, N), active# U21(tt(), M, N) -> mark# s plus(N, M), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), active# x(N, 0()) -> mark# U31 isNat N, active# U41(tt(), M, N) -> mark# plus(x(N, M), N), active# and(tt(), X) -> mark# X, active# isNat s V1 -> mark# isNat V1, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)} Scc: { U31# mark X -> U31# X, U31# active X -> U31# X} Scc: { isNat# mark X -> isNat# X, isNat# active X -> isNat# X} Scc: { s# mark X -> s# X, s# active X -> s# X} Scc: { and#(X1, mark X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)} Scc: { x#(X1, mark X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)} Scc: { plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)} Scc: { U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)} Scc: { U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)} Scc: { U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)} SCC (30): Strict: { mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2), mark# s X -> mark# X, mark# s X -> active# s mark X, mark# plus(X1, X2) -> mark# X1, mark# plus(X1, X2) -> mark# X2, mark# plus(X1, X2) -> active# plus(mark X1, mark X2), mark# U21(X1, X2, X3) -> mark# X1, mark# U21(X1, X2, X3) -> active# U21(mark X1, X2, X3), mark# U31 X -> mark# X, mark# U31 X -> active# U31 mark X, mark# x(X1, X2) -> mark# X1, mark# x(X1, X2) -> mark# X2, mark# x(X1, X2) -> active# x(mark X1, mark X2), mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), mark# and(X1, X2) -> mark# X1, mark# and(X1, X2) -> active# and(mark X1, X2), mark# isNat X -> active# isNat X, active# U11(tt(), N) -> mark# N, active# plus(N, s M) -> mark# U21(and(isNat M, isNat N), M, N), active# plus(N, 0()) -> mark# U11(isNat N, N), active# U21(tt(), M, N) -> mark# s plus(N, M), active# x(N, s M) -> mark# U41(and(isNat M, isNat N), M, N), active# x(N, 0()) -> mark# U31 isNat N, active# U41(tt(), M, N) -> mark# plus(x(N, M), N), active# and(tt(), X) -> mark# X, active# isNat s V1 -> mark# isNat V1, active# isNat plus(V1, V2) -> mark# and(isNat V1, isNat V2), active# isNat x(V1, V2) -> mark# and(isNat V1, isNat V2)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (2): Strict: { U31# mark X -> U31# X, U31# active X -> U31# X} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (2): Strict: { isNat# mark X -> isNat# X, isNat# active X -> isNat# X} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (2): Strict: { s# mark X -> s# X, s# active X -> s# X} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (4): Strict: { and#(X1, mark X2) -> and#(X1, X2), and#(X1, active X2) -> and#(X1, X2), and#(mark X1, X2) -> and#(X1, X2), and#(active X1, X2) -> and#(X1, X2)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (4): Strict: { x#(X1, mark X2) -> x#(X1, X2), x#(X1, active X2) -> x#(X1, X2), x#(mark X1, X2) -> x#(X1, X2), x#(active X1, X2) -> x#(X1, X2)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (4): Strict: { plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, active X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(active X1, X2) -> plus#(X1, X2)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (4): Strict: { U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (6): Strict: { U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open SCC (6): Strict: { U21#(X1, X2, mark X3) -> U21#(X1, X2, X3), U21#(X1, X2, active X3) -> U21#(X1, X2, X3), U21#(X1, mark X2, X3) -> U21#(X1, X2, X3), U21#(X1, active X2, X3) -> U21#(X1, X2, X3), U21#(mark X1, X2, X3) -> U21#(X1, X2, X3), U21#(active X1, X2, X3) -> U21#(X1, X2, X3)} Weak: { mark U11(X1, X2) -> active U11(mark X1, X2), mark tt() -> active tt(), mark s X -> active s mark X, mark plus(X1, X2) -> active plus(mark X1, mark X2), mark U21(X1, X2, X3) -> active U21(mark X1, X2, X3), mark 0() -> active 0(), mark U31 X -> active U31 mark X, mark x(X1, X2) -> active x(mark X1, mark X2), mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3), mark and(X1, X2) -> active and(mark X1, X2), mark isNat X -> active isNat X, active U11(tt(), N) -> mark N, active plus(N, s M) -> mark U21(and(isNat M, isNat N), M, N), active plus(N, 0()) -> mark U11(isNat N, N), active U21(tt(), M, N) -> mark s plus(N, M), active U31 tt() -> mark 0(), active x(N, s M) -> mark U41(and(isNat M, isNat N), M, N), active x(N, 0()) -> mark U31 isNat N, active U41(tt(), M, N) -> mark plus(x(N, M), N), active and(tt(), X) -> mark X, active isNat s V1 -> mark isNat V1, active isNat plus(V1, V2) -> mark and(isNat V1, isNat V2), active isNat 0() -> mark tt(), active isNat x(V1, V2) -> mark and(isNat V1, isNat V2), U11(X1, mark X2) -> U11(X1, X2), U11(X1, active X2) -> U11(X1, X2), U11(mark X1, X2) -> U11(X1, X2), U11(active X1, X2) -> U11(X1, X2), s mark X -> s X, s active X -> s X, plus(X1, mark X2) -> plus(X1, X2), plus(X1, active X2) -> plus(X1, X2), plus(mark X1, X2) -> plus(X1, X2), plus(active X1, X2) -> plus(X1, X2), U21(X1, X2, mark X3) -> U21(X1, X2, X3), U21(X1, X2, active X3) -> U21(X1, X2, X3), U21(X1, mark X2, X3) -> U21(X1, X2, X3), U21(X1, active X2, X3) -> U21(X1, X2, X3), U21(mark X1, X2, X3) -> U21(X1, X2, X3), U21(active X1, X2, X3) -> U21(X1, X2, X3), U31 mark X -> U31 X, U31 active X -> U31 X, x(X1, mark X2) -> x(X1, X2), x(X1, active X2) -> x(X1, X2), x(mark X1, X2) -> x(X1, X2), x(active X1, X2) -> x(X1, X2), U41(X1, X2, mark X3) -> U41(X1, X2, X3), U41(X1, X2, active X3) -> U41(X1, X2, X3), U41(X1, mark X2, X3) -> U41(X1, X2, X3), U41(X1, active X2, X3) -> U41(X1, X2, X3), U41(mark X1, X2, X3) -> U41(X1, X2, X3), U41(active X1, X2, X3) -> U41(X1, X2, X3), and(X1, mark X2) -> and(X1, X2), and(X1, active X2) -> and(X1, X2), and(mark X1, X2) -> and(X1, X2), and(active X1, X2) -> and(X1, X2), isNat mark X -> isNat X, isNat active X -> isNat X} Open