MAYBE 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: Strict: { 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)} 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)} EDG: { (mark#(U31(X)) -> active#(U31(mark(X))), active#(isNat(x(V1, V2))) -> 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))) -> 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)) -> active#(U31(mark(X))), active#(isNat(0())) -> mark#(tt())) (mark#(U31(X)) -> active#(U31(mark(X))), active#(isNat(plus(V1, V2))) -> 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))) -> 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)) -> active#(U31(mark(X))), active#(isNat(s(V1))) -> isNat#(V1)) (mark#(U31(X)) -> active#(U31(mark(X))), active#(isNat(s(V1))) -> mark#(isNat(V1))) (mark#(U31(X)) -> active#(U31(mark(X))), active#(and(tt(), X)) -> mark#(X)) (mark#(U31(X)) -> active#(U31(mark(X))), active#(U41(tt(), M, N)) -> x#(N, M)) (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)) -> mark#(plus(x(N, M), N))) (mark#(U31(X)) -> active#(U31(mark(X))), active#(x(N, 0())) -> 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())) -> mark#(U31(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, s(M))) -> isNat#(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))) -> 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)) -> active#(U31(mark(X))), active#(U31(tt())) -> mark#(0())) (mark#(U31(X)) -> active#(U31(mark(X))), active#(U21(tt(), M, N)) -> 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)) -> mark#(s(plus(N, M)))) (mark#(U31(X)) -> active#(U31(mark(X))), active#(plus(N, 0())) -> isNat#(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())) -> mark#(U11(isNat(N), 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, s(M))) -> isNat#(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))) -> 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)) -> active#(U31(mark(X))), active#(U11(tt(), N)) -> mark#(N)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(isNat(X)) -> active#(isNat(X))) (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#(and(X1, X2)) -> active#(and(mark(X1), X2))) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(and(X1, X2)) -> mark#(X1)) (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#(U41(X1, X2, X3)) -> active#(U41(mark(X1), X2, X3))) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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#(x(X1, X2)) -> active#(x(mark(X1), mark(X2)))) (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)) -> mark#(X1)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(U31(X)) -> U31#(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)) -> mark#(X)) (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#(U21(X1, X2, X3)) -> active#(U21(mark(X1), X2, X3))) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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#(plus(X1, X2)) -> active#(plus(mark(X1), mark(X2)))) (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)) -> mark#(X1)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(s(X)) -> s#(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)) -> mark#(X)) (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#(U11(X1, X2)) -> active#(U11(mark(X1), X2))) (active#(x(N, 0())) -> mark#(U31(isNat(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)) (mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3), U21#(active(X1), 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#(X1, active(X2), 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, X2, active(X3)) -> U21#(X1, X2, X3)) (mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3), U21#(X1, X2, mark(X3)) -> U21#(X1, X2, X3)) (U21#(X1, X2, mark(X3)) -> U21#(X1, X2, X3), U21#(active(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, 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#(X1, mark(X2), 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, X2, mark(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, 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#(X1, active(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, 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, X2, mark(X3)) -> U21#(X1, X2, X3)) (U21#(mark(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#(mark(X1), 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#(X1, mark(X2), 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, X2, mark(X3)) -> U21#(X1, X2, X3)) (U41#(X1, X2, mark(X3)) -> U41#(X1, X2, X3), U41#(active(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, 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#(X1, mark(X2), 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, X2, mark(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, 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#(X1, active(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, 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, X2, mark(X3)) -> U41#(X1, X2, X3)) (U41#(mark(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#(mark(X1), 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#(X1, mark(X2), 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, X2, mark(X3)) -> U41#(X1, X2, X3)) (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#(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)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(isNat(X)) -> active#(isNat(X))) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(and(X1, X2)) -> and#(mark(X1), X2)) (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)) -> mark#(X1)) (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#(U41(X1, X2, X3)) -> active#(U41(mark(X1), X2, X3))) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(U41(X1, X2, X3)) -> mark#(X1)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(x(X1, X2)) -> 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))) -> mark#(isNat(V1)), mark#(x(X1, X2)) -> mark#(X2)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(x(X1, X2)) -> mark#(X1)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(U31(X)) -> U31#(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)) -> mark#(X)) (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#(U21(X1, X2, X3)) -> active#(U21(mark(X1), X2, X3))) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(U21(X1, X2, X3)) -> mark#(X1)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(plus(X1, X2)) -> plus#(mark(X1), 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)) -> mark#(X2)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(plus(X1, X2)) -> mark#(X1)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(s(X)) -> s#(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)) -> mark#(X)) (active#(isNat(s(V1))) -> mark#(isNat(V1)), mark#(U11(X1, X2)) -> U11#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(U31(X)) -> U31#(mark(X)), U31#(active(X)) -> U31#(X)) (mark#(U31(X)) -> U31#(mark(X)), U31#(mark(X)) -> U31#(X)) (active#(x(N, 0())) -> U31#(isNat(N)), U31#(active(X)) -> U31#(X)) (active#(x(N, 0())) -> U31#(isNat(N)), U31#(mark(X)) -> U31#(X)) (mark#(x(X1, X2)) -> mark#(X2), mark#(isNat(X)) -> active#(isNat(X))) (mark#(x(X1, X2)) -> mark#(X2), mark#(and(X1, X2)) -> and#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> x#(mark(X1), 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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(U31(X)) -> U31#(mark(X))) (mark#(x(X1, X2)) -> mark#(X2), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(x(X1, X2)) -> mark#(X2), mark#(U31(X)) -> mark#(X)) (mark#(x(X1, X2)) -> mark#(X2), mark#(0()) -> active#(0())) (mark#(x(X1, X2)) -> mark#(X2), mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> plus#(mark(X1), 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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(s(X)) -> s#(mark(X))) (mark#(x(X1, X2)) -> mark#(X2), mark#(s(X)) -> active#(s(mark(X)))) (mark#(x(X1, X2)) -> mark#(X2), mark#(s(X)) -> mark#(X)) (mark#(x(X1, X2)) -> mark#(X2), mark#(tt()) -> active#(tt())) (mark#(x(X1, X2)) -> mark#(X2), mark#(U11(X1, X2)) -> U11#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> active#(x(mark(X1), mark(X2))), active#(isNat(x(V1, V2))) -> 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))) -> 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)) -> active#(x(mark(X1), mark(X2))), active#(isNat(0())) -> mark#(tt())) (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(plus(V1, V2))) -> isNat#(V1)) (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))) -> mark#(and(isNat(V1), isNat(V2)))) (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(s(V1))) -> mark#(isNat(V1))) (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#(U41(tt(), M, N)) -> x#(N, M)) (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)) -> mark#(plus(x(N, M), 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#(x(N, 0())) -> 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)) -> 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, s(M))) -> isNat#(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))) -> 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)) -> active#(x(mark(X1), mark(X2))), active#(U31(tt())) -> mark#(0())) (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#(U21(tt(), M, N)) -> 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)) -> active#(x(mark(X1), mark(X2))), active#(plus(N, 0())) -> isNat#(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())) -> mark#(U11(isNat(N), 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, s(M))) -> isNat#(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))) -> 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)) -> active#(x(mark(X1), mark(X2))), active#(U11(tt(), N)) -> mark#(N)) (active#(isNat(x(V1, V2))) -> mark#(and(isNat(V1), isNat(V2))), mark#(isNat(X)) -> active#(isNat(X))) (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#(and(X1, X2)) -> active#(and(mark(X1), X2))) (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#(U41(X1, X2, X3)) -> 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(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#(x(X1, X2)) -> 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))) -> 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)) -> mark#(X1)) (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#(U31(X)) -> active#(U31(mark(X)))) (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#(U21(X1, X2, X3)) -> 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))) -> 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#(plus(X1, X2)) -> 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(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)) -> mark#(X1)) (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#(s(X)) -> active#(s(mark(X)))) (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#(U11(X1, X2)) -> 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(x(V1, V2))) -> mark#(and(isNat(V1), isNat(V2))), mark#(U11(X1, X2)) -> mark#(X1)) (active#(x(N, s(M))) -> isNat#(M), isNat#(active(X)) -> isNat#(X)) (active#(x(N, s(M))) -> isNat#(M), isNat#(mark(X)) -> isNat#(X)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (mark#(plus(X1, X2)) -> mark#(X1), mark#(and(X1, X2)) -> and#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> x#(mark(X1), 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)) -> mark#(X2)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U31(X)) -> U31#(mark(X))) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U31(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> plus#(mark(X1), 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)) -> mark#(X2)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(s(X)) -> s#(mark(X))) (mark#(plus(X1, X2)) -> mark#(X1), mark#(s(X)) -> active#(s(mark(X)))) (mark#(plus(X1, X2)) -> mark#(X1), mark#(s(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(plus(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> U11#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (mark#(x(X1, X2)) -> mark#(X1), mark#(and(X1, X2)) -> and#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> x#(mark(X1), 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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(U31(X)) -> U31#(mark(X))) (mark#(x(X1, X2)) -> mark#(X1), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(x(X1, X2)) -> mark#(X1), mark#(U31(X)) -> mark#(X)) (mark#(x(X1, X2)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(x(X1, X2)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> plus#(mark(X1), 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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X1), mark#(s(X)) -> s#(mark(X))) (mark#(x(X1, X2)) -> mark#(X1), mark#(s(X)) -> active#(s(mark(X)))) (mark#(x(X1, X2)) -> mark#(X1), mark#(s(X)) -> mark#(X)) (mark#(x(X1, X2)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(x(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> U11#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (mark#(and(X1, X2)) -> mark#(X1), mark#(and(X1, X2)) -> and#(mark(X1), X2)) (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)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> x#(mark(X1), 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)) -> mark#(X2)) (mark#(and(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(U31(X)) -> U31#(mark(X))) (mark#(and(X1, X2)) -> mark#(X1), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(and(X1, X2)) -> mark#(X1), mark#(U31(X)) -> mark#(X)) (mark#(and(X1, X2)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(and(X1, X2)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> U21#(mark(X1), X2, X3)) (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)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> plus#(mark(X1), 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)) -> mark#(X2)) (mark#(and(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(and(X1, X2)) -> mark#(X1), mark#(s(X)) -> s#(mark(X))) (mark#(and(X1, X2)) -> mark#(X1), mark#(s(X)) -> active#(s(mark(X)))) (mark#(and(X1, X2)) -> mark#(X1), mark#(s(X)) -> mark#(X)) (mark#(and(X1, X2)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(and(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> U11#(mark(X1), X2)) (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)) -> mark#(X1)) (active#(U41(tt(), M, N)) -> plus#(x(N, M), N), plus#(active(X1), 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#(X1, active(X2)) -> plus#(X1, X2)) (active#(U41(tt(), M, N)) -> plus#(x(N, M), N), plus#(X1, mark(X2)) -> plus#(X1, X2)) (active#(plus(N, s(M))) -> isNat#(N), isNat#(active(X)) -> isNat#(X)) (active#(plus(N, s(M))) -> isNat#(N), isNat#(mark(X)) -> isNat#(X)) (active#(x(N, s(M))) -> isNat#(N), isNat#(active(X)) -> isNat#(X)) (active#(x(N, s(M))) -> isNat#(N), isNat#(mark(X)) -> isNat#(X)) (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)) (active#(plus(N, s(M))) -> U21#(and(isNat(M), isNat(N)), M, N), U21#(active(X1), 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#(X1, active(X2), 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, X2, active(X3)) -> U21#(X1, X2, X3)) (active#(plus(N, s(M))) -> U21#(and(isNat(M), isNat(N)), M, N), U21#(X1, X2, mark(X3)) -> U21#(X1, X2, X3)) (mark#(U21(X1, X2, X3)) -> active#(U21(mark(X1), X2, X3)), active#(isNat(x(V1, V2))) -> 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))) -> 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)) -> active#(U21(mark(X1), X2, X3)), active#(isNat(0())) -> mark#(tt())) (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(plus(V1, V2))) -> isNat#(V1)) (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))) -> mark#(and(isNat(V1), isNat(V2)))) (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(s(V1))) -> mark#(isNat(V1))) (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#(U41(tt(), M, N)) -> x#(N, M)) (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)) -> mark#(plus(x(N, M), 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#(x(N, 0())) -> 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)) -> 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, s(M))) -> isNat#(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))) -> 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)) -> active#(U21(mark(X1), X2, X3)), active#(U31(tt())) -> mark#(0())) (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#(U21(tt(), M, N)) -> 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)) -> active#(U21(mark(X1), X2, X3)), active#(plus(N, 0())) -> isNat#(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())) -> mark#(U11(isNat(N), 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, s(M))) -> isNat#(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))) -> 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)) -> active#(U21(mark(X1), X2, X3)), active#(U11(tt(), N)) -> mark#(N)) (active#(plus(N, s(M))) -> mark#(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#(and(X1, X2)) -> 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))) -> 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#(U41(X1, X2, X3)) -> 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#(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#(x(X1, X2)) -> 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))) -> 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)) -> mark#(X1)) (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#(U31(X)) -> active#(U31(mark(X)))) (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#(U21(X1, X2, X3)) -> 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))) -> 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#(plus(X1, X2)) -> 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#(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)) -> mark#(X1)) (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#(s(X)) -> active#(s(mark(X)))) (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#(U11(X1, X2)) -> 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#(plus(N, s(M))) -> mark#(U21(and(isNat(M), isNat(N)), M, N)), mark#(U11(X1, X2)) -> mark#(X1)) (active#(isNat(plus(V1, V2))) -> isNat#(V2), isNat#(active(X)) -> isNat#(X)) (active#(isNat(plus(V1, V2))) -> isNat#(V2), isNat#(mark(X)) -> isNat#(X)) (U11#(X1, mark(X2)) -> U11#(X1, X2), U11#(active(X1), 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#(X1, active(X2)) -> U11#(X1, X2)) (U11#(X1, mark(X2)) -> U11#(X1, X2), U11#(X1, mark(X2)) -> U11#(X1, X2)) (U11#(mark(X1), X2) -> U11#(X1, X2), U11#(active(X1), 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#(X1, active(X2)) -> U11#(X1, X2)) (U11#(mark(X1), X2) -> U11#(X1, X2), U11#(X1, mark(X2)) -> U11#(X1, X2)) (plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(active(X1), 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#(X1, active(X2)) -> plus#(X1, X2)) (plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, mark(X2)) -> plus#(X1, X2)) (plus#(mark(X1), X2) -> plus#(X1, X2), plus#(active(X1), 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#(X1, active(X2)) -> plus#(X1, X2)) (plus#(mark(X1), X2) -> plus#(X1, X2), plus#(X1, mark(X2)) -> plus#(X1, X2)) (x#(X1, mark(X2)) -> x#(X1, X2), x#(active(X1), 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#(X1, active(X2)) -> x#(X1, X2)) (x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, mark(X2)) -> x#(X1, X2)) (x#(mark(X1), X2) -> x#(X1, X2), x#(active(X1), 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#(X1, active(X2)) -> x#(X1, X2)) (x#(mark(X1), X2) -> x#(X1, X2), x#(X1, mark(X2)) -> x#(X1, X2)) (and#(X1, mark(X2)) -> and#(X1, X2), and#(active(X1), 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#(X1, active(X2)) -> and#(X1, X2)) (and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, mark(X2)) -> and#(X1, X2)) (and#(mark(X1), X2) -> and#(X1, X2), and#(active(X1), 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#(X1, active(X2)) -> and#(X1, X2)) (and#(mark(X1), X2) -> and#(X1, X2), and#(X1, mark(X2)) -> and#(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)) (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)) (active#(U31(tt())) -> mark#(0()), mark#(0()) -> active#(0())) (active#(isNat(0())) -> mark#(tt()), mark#(tt()) -> active#(tt())) (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(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)) (and#(active(X1), X2) -> and#(X1, X2), and#(X1, mark(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#(mark(X1), X2) -> and#(X1, X2)) (and#(active(X1), X2) -> and#(X1, X2), and#(active(X1), X2) -> and#(X1, X2)) (and#(X1, active(X2)) -> and#(X1, X2), and#(X1, mark(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#(mark(X1), X2) -> and#(X1, X2)) (and#(X1, active(X2)) -> and#(X1, X2), and#(active(X1), X2) -> and#(X1, X2)) (x#(active(X1), X2) -> x#(X1, X2), x#(X1, mark(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#(mark(X1), X2) -> x#(X1, X2)) (x#(active(X1), X2) -> x#(X1, X2), x#(active(X1), X2) -> x#(X1, X2)) (x#(X1, active(X2)) -> x#(X1, X2), x#(X1, mark(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#(mark(X1), X2) -> x#(X1, X2)) (x#(X1, active(X2)) -> x#(X1, X2), x#(active(X1), X2) -> x#(X1, X2)) (plus#(active(X1), X2) -> plus#(X1, X2), plus#(X1, mark(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#(mark(X1), X2) -> plus#(X1, X2)) (plus#(active(X1), X2) -> plus#(X1, X2), plus#(active(X1), X2) -> plus#(X1, X2)) (plus#(X1, active(X2)) -> plus#(X1, X2), plus#(X1, mark(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#(mark(X1), X2) -> plus#(X1, X2)) (plus#(X1, active(X2)) -> plus#(X1, X2), plus#(active(X1), X2) -> plus#(X1, X2)) (U11#(active(X1), X2) -> U11#(X1, X2), U11#(X1, mark(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#(mark(X1), X2) -> U11#(X1, X2)) (U11#(active(X1), X2) -> U11#(X1, X2), U11#(active(X1), X2) -> U11#(X1, X2)) (U11#(X1, active(X2)) -> U11#(X1, X2), U11#(X1, mark(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#(mark(X1), X2) -> U11#(X1, X2)) (U11#(X1, active(X2)) -> U11#(X1, X2), U11#(active(X1), X2) -> U11#(X1, X2)) (active#(isNat(x(V1, V2))) -> isNat#(V2), isNat#(mark(X)) -> isNat#(X)) (active#(isNat(x(V1, V2))) -> isNat#(V2), isNat#(active(X)) -> isNat#(X)) (active#(x(N, s(M))) -> mark#(U41(and(isNat(M), isNat(N)), M, N)), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (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#(s(X)) -> active#(s(mark(X)))) (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#(plus(X1, X2)) -> mark#(X1)) (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)) -> active#(plus(mark(X1), mark(X2)))) (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#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (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#(U31(X)) -> active#(U31(mark(X)))) (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#(x(X1, X2)) -> mark#(X1)) (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)) -> active#(x(mark(X1), mark(X2)))) (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#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (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#(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)) -> and#(mark(X1), X2)) (active#(x(N, s(M))) -> mark#(U41(and(isNat(M), isNat(N)), M, N)), mark#(isNat(X)) -> active#(isNat(X))) (mark#(U41(X1, X2, X3)) -> active#(U41(mark(X1), X2, X3)), active#(U11(tt(), N)) -> mark#(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#(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))) -> and#(isNat(M), isNat(N))) (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))) -> isNat#(M)) (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, 0())) -> U11#(isNat(N), N)) (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#(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)) -> s#(plus(N, M))) (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#(U31(tt())) -> mark#(0())) (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#(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))) -> and#(isNat(M), isNat(N))) (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))) -> isNat#(M)) (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, 0())) -> U31#(isNat(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#(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)) -> plus#(x(N, M), N)) (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#(and(tt(), X)) -> mark#(X)) (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#(isNat(s(V1))) -> isNat#(V1)) (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(plus(V1, V2))) -> and#(isNat(V1), 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))) -> 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(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))) -> and#(isNat(V1), 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))) -> isNat#(V2)) (active#(x(N, s(M))) -> U41#(and(isNat(M), isNat(N)), M, N), U41#(X1, X2, mark(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, mark(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#(mark(X1), X2, X3) -> U41#(X1, X2, X3)) (active#(x(N, s(M))) -> U41#(and(isNat(M), isNat(N)), M, N), U41#(active(X1), X2, X3) -> U41#(X1, X2, X3)) (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#(x(N, 0())) -> isNat#(N), isNat#(mark(X)) -> isNat#(X)) (active#(x(N, 0())) -> isNat#(N), isNat#(active(X)) -> isNat#(X)) (active#(plus(N, 0())) -> isNat#(N), isNat#(mark(X)) -> isNat#(X)) (active#(plus(N, 0())) -> isNat#(N), isNat#(active(X)) -> isNat#(X)) (active#(U11(tt(), N)) -> mark#(N), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (active#(U11(tt(), N)) -> mark#(N), mark#(tt()) -> active#(tt())) (active#(U11(tt(), N)) -> mark#(N), mark#(s(X)) -> mark#(X)) (active#(U11(tt(), N)) -> mark#(N), mark#(s(X)) -> active#(s(mark(X)))) (active#(U11(tt(), N)) -> mark#(N), mark#(s(X)) -> s#(mark(X))) (active#(U11(tt(), N)) -> mark#(N), mark#(plus(X1, X2)) -> mark#(X1)) (active#(U11(tt(), N)) -> mark#(N), mark#(plus(X1, X2)) -> 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)) -> plus#(mark(X1), mark(X2))) (active#(U11(tt(), N)) -> mark#(N), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (active#(U11(tt(), N)) -> mark#(N), mark#(0()) -> active#(0())) (active#(U11(tt(), N)) -> mark#(N), mark#(U31(X)) -> mark#(X)) (active#(U11(tt(), N)) -> mark#(N), mark#(U31(X)) -> active#(U31(mark(X)))) (active#(U11(tt(), N)) -> mark#(N), mark#(U31(X)) -> U31#(mark(X))) (active#(U11(tt(), N)) -> mark#(N), mark#(x(X1, X2)) -> mark#(X1)) (active#(U11(tt(), N)) -> mark#(N), mark#(x(X1, X2)) -> 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)) -> x#(mark(X1), mark(X2))) (active#(U11(tt(), N)) -> mark#(N), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (active#(U11(tt(), N)) -> mark#(N), mark#(and(X1, X2)) -> mark#(X1)) (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)) -> and#(mark(X1), X2)) (active#(U11(tt(), N)) -> mark#(N), mark#(isNat(X)) -> active#(isNat(X))) (active#(plus(N, 0())) -> U11#(isNat(N), N), U11#(X1, mark(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#(mark(X1), X2) -> U11#(X1, X2)) (active#(plus(N, 0())) -> U11#(isNat(N), N), U11#(active(X1), X2) -> U11#(X1, X2)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(s(X)) -> 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)) -> s#(mark(X))) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(plus(X1, X2)) -> 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)) -> plus#(mark(X1), mark(X2))) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(U31(X)) -> 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)) -> U31#(mark(X))) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(x(X1, X2)) -> 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)) -> x#(mark(X1), mark(X2))) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(and(X1, X2)) -> mark#(X1)) (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)) -> and#(mark(X1), X2)) (mark#(U41(X1, X2, X3)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(s(X)) -> 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)) -> s#(mark(X))) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(plus(X1, X2)) -> 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)) -> plus#(mark(X1), mark(X2))) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(U31(X)) -> 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)) -> U31#(mark(X))) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(x(X1, X2)) -> 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)) -> x#(mark(X1), mark(X2))) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(and(X1, X2)) -> mark#(X1)) (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)) -> and#(mark(X1), X2)) (mark#(U21(X1, X2, X3)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(tt()) -> active#(tt())) (mark#(U11(X1, X2)) -> mark#(X1), mark#(s(X)) -> mark#(X)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(s(X)) -> active#(s(mark(X)))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(s(X)) -> s#(mark(X))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(plus(X1, X2)) -> 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)) -> plus#(mark(X1), mark(X2))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(0()) -> active#(0())) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U31(X)) -> mark#(X)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U31(X)) -> U31#(mark(X))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> mark#(X1)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(x(X1, X2)) -> 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)) -> x#(mark(X1), mark(X2))) (mark#(U11(X1, X2)) -> mark#(X1), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(and(X1, X2)) -> mark#(X1)) (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)) -> and#(mark(X1), X2)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (active#(plus(N, s(M))) -> isNat#(M), isNat#(mark(X)) -> isNat#(X)) (active#(plus(N, s(M))) -> isNat#(M), isNat#(active(X)) -> isNat#(X)) (active#(isNat(plus(V1, V2))) -> mark#(and(isNat(V1), isNat(V2))), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (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#(s(X)) -> active#(s(mark(X)))) (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#(plus(X1, X2)) -> mark#(X1)) (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)) -> active#(plus(mark(X1), mark(X2)))) (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#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (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#(U31(X)) -> active#(U31(mark(X)))) (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#(x(X1, X2)) -> mark#(X1)) (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)) -> active#(x(mark(X1), mark(X2)))) (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#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (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#(and(X1, X2)) -> active#(and(mark(X1), X2))) (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#(isNat(X)) -> active#(isNat(X))) (mark#(plus(X1, X2)) -> active#(plus(mark(X1), mark(X2))), active#(U11(tt(), N)) -> mark#(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#(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))) -> and#(isNat(M), isNat(N))) (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))) -> isNat#(M)) (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, 0())) -> U11#(isNat(N), N)) (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#(U21(tt(), M, N)) -> mark#(s(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)) -> plus#(N, M)) (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#(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))) -> U41#(and(isNat(M), isNat(N)), M, 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))) -> 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, 0())) -> mark#(U31(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())) -> isNat#(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#(U41(tt(), M, N)) -> plus#(x(N, M), N)) (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#(and(tt(), X)) -> mark#(X)) (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#(isNat(s(V1))) -> isNat#(V1)) (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(plus(V1, V2))) -> and#(isNat(V1), 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))) -> 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(x(V1, V2))) -> mark#(and(isNat(V1), isNat(V2)))) (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))) -> isNat#(V1)) (mark#(plus(X1, X2)) -> active#(plus(mark(X1), mark(X2))), active#(isNat(x(V1, V2))) -> isNat#(V2)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(tt()) -> active#(tt())) (mark#(plus(X1, X2)) -> mark#(X2), mark#(s(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(s(X)) -> active#(s(mark(X)))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(s(X)) -> s#(mark(X))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> 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)) -> plus#(mark(X1), mark(X2))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(0()) -> active#(0())) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U31(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U31(X)) -> active#(U31(mark(X)))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U31(X)) -> U31#(mark(X))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> 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)) -> x#(mark(X1), mark(X2))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(and(X1, X2)) -> mark#(X1)) (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)) -> and#(mark(X1), X2)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(isNat(X)) -> active#(isNat(X))) (mark#(isNat(X)) -> active#(isNat(X)), active#(U11(tt(), N)) -> mark#(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#(plus(N, s(M))) -> U21#(and(isNat(M), isNat(N)), M, 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))) -> isNat#(N)) (mark#(isNat(X)) -> active#(isNat(X)), active#(plus(N, s(M))) -> isNat#(M)) (mark#(isNat(X)) -> active#(isNat(X)), active#(plus(N, 0())) -> mark#(U11(isNat(N), 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())) -> isNat#(N)) (mark#(isNat(X)) -> active#(isNat(X)), active#(U21(tt(), M, N)) -> mark#(s(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)) -> plus#(N, M)) (mark#(isNat(X)) -> active#(isNat(X)), active#(U31(tt())) -> mark#(0())) (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#(x(N, s(M))) -> U41#(and(isNat(M), isNat(N)), M, 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))) -> isNat#(N)) (mark#(isNat(X)) -> active#(isNat(X)), active#(x(N, s(M))) -> isNat#(M)) (mark#(isNat(X)) -> active#(isNat(X)), active#(x(N, 0())) -> mark#(U31(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())) -> isNat#(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#(U41(tt(), M, N)) -> plus#(x(N, M), N)) (mark#(isNat(X)) -> active#(isNat(X)), active#(U41(tt(), M, N)) -> x#(N, M)) (mark#(isNat(X)) -> active#(isNat(X)), active#(and(tt(), X)) -> mark#(X)) (mark#(isNat(X)) -> active#(isNat(X)), active#(isNat(s(V1))) -> mark#(isNat(V1))) (mark#(isNat(X)) -> active#(isNat(X)), active#(isNat(s(V1))) -> isNat#(V1)) (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(plus(V1, V2))) -> and#(isNat(V1), 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))) -> isNat#(V2)) (mark#(isNat(X)) -> active#(isNat(X)), active#(isNat(0())) -> mark#(tt())) (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(x(V1, V2))) -> and#(isNat(V1), 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))) -> isNat#(V2)) (mark#(s(X)) -> s#(mark(X)), s#(mark(X)) -> s#(X)) (mark#(s(X)) -> s#(mark(X)), s#(active(X)) -> s#(X)) (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))) (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)) (U41#(active(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), U41#(X1, X2, active(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, active(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#(active(X1), X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active(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, active(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, active(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#(active(X1), X2, 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, 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, mark(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#(mark(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)) (U21#(active(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), U21#(X1, X2, active(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, active(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#(active(X1), X2, X3) -> U21#(X1, X2, X3)) (U21#(X1, active(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, active(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, active(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#(active(X1), X2, 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, 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, mark(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#(mark(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)) (mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3), U41#(X1, X2, mark(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, mark(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#(mark(X1), X2, X3) -> U41#(X1, X2, X3)) (mark#(U41(X1, X2, X3)) -> U41#(mark(X1), X2, X3), U41#(active(X1), X2, X3) -> U41#(X1, X2, X3)) (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#(U21(tt(), M, N)) -> mark#(s(plus(N, M))), mark#(U11(X1, X2)) -> mark#(X1)) (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)) -> U11#(mark(X1), X2)) (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#(s(X)) -> active#(s(mark(X)))) (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#(plus(X1, X2)) -> mark#(X1)) (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)) -> active#(plus(mark(X1), mark(X2)))) (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#(U21(X1, X2, X3)) -> mark#(X1)) (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)) -> U21#(mark(X1), X2, X3)) (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#(U31(X)) -> active#(U31(mark(X)))) (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#(x(X1, X2)) -> mark#(X1)) (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)) -> active#(x(mark(X1), mark(X2)))) (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#(U41(X1, X2, X3)) -> mark#(X1)) (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)) -> U41#(mark(X1), X2, X3)) (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#(and(X1, X2)) -> active#(and(mark(X1), X2))) (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#(isNat(X)) -> active#(isNat(X))) (mark#(s(X)) -> active#(s(mark(X))), active#(U11(tt(), N)) -> mark#(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#(plus(N, s(M))) -> U21#(and(isNat(M), isNat(N)), M, 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))) -> isNat#(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, 0())) -> mark#(U11(isNat(N), 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())) -> isNat#(N)) (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#(U21(tt(), M, N)) -> s#(plus(N, M))) (mark#(s(X)) -> active#(s(mark(X))), active#(U21(tt(), M, N)) -> plus#(N, M)) (mark#(s(X)) -> active#(s(mark(X))), active#(U31(tt())) -> mark#(0())) (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#(x(N, s(M))) -> U41#(and(isNat(M), isNat(N)), M, 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))) -> 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, 0())) -> mark#(U31(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())) -> isNat#(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#(U41(tt(), M, N)) -> plus#(x(N, M), N)) (mark#(s(X)) -> active#(s(mark(X))), active#(U41(tt(), M, N)) -> x#(N, M)) (mark#(s(X)) -> active#(s(mark(X))), active#(and(tt(), X)) -> mark#(X)) (mark#(s(X)) -> active#(s(mark(X))), active#(isNat(s(V1))) -> mark#(isNat(V1))) (mark#(s(X)) -> active#(s(mark(X))), active#(isNat(s(V1))) -> isNat#(V1)) (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(plus(V1, V2))) -> and#(isNat(V1), 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))) -> isNat#(V2)) (mark#(s(X)) -> active#(s(mark(X))), active#(isNat(0())) -> mark#(tt())) (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(x(V1, V2))) -> and#(isNat(V1), 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))) -> isNat#(V2)) } SCCS: Scc: { isNat#(mark(X)) -> isNat#(X), isNat#(active(X)) -> isNat#(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: { 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: { 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: { U31#(mark(X)) -> U31#(X), U31#(active(X)) -> U31#(X)} 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: { 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: { s#(mark(X)) -> s#(X), s#(active(X)) -> s#(X)} 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: { 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: 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)} SPSC: Simple Projection: pi(isNat#) = 0 Strict: {isNat#(active(X)) -> isNat#(X)} EDG: {(isNat#(active(X)) -> isNat#(X), isNat#(active(X)) -> isNat#(X))} SCCS: Scc: {isNat#(active(X)) -> isNat#(X)} SCC: Strict: {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)} SPSC: Simple Projection: pi(isNat#) = 0 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(and#) = 0 Strict: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2), and#(mark(X1), X2) -> and#(X1, X2)} EDG: {(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#(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#(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))} SCCS: Scc: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2), and#(mark(X1), X2) -> and#(X1, X2)} SCC: Strict: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2), and#(mark(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)} SPSC: Simple Projection: pi(and#) = 0 Strict: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2)} EDG: {(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#(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))} SCCS: Scc: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2)} SCC: Strict: { and#(X1, mark(X2)) -> and#(X1, X2), and#(X1, active(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)} SPSC: Simple Projection: pi(and#) = 1 Strict: {and#(X1, active(X2)) -> and#(X1, X2)} EDG: {(and#(X1, active(X2)) -> and#(X1, X2), and#(X1, active(X2)) -> and#(X1, X2))} SCCS: Scc: {and#(X1, active(X2)) -> and#(X1, X2)} SCC: Strict: {and#(X1, active(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)} SPSC: Simple Projection: pi(and#) = 1 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(U41#) = 2 Strict: { U41#(X1, X2, mark(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)} EDG: {(U41#(X1, mark(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#(mark(X1), 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#(X1, mark(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#(mark(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#(mark(X1), 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#(X1, mark(X2), 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), U41#(X1, X2, mark(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, active(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#(active(X1), X2, X3) -> U41#(X1, X2, X3)) (U41#(X1, active(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, mark(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#(mark(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, 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, 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))} SCCS: Scc: { U41#(X1, X2, mark(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: Strict: { U41#(X1, X2, mark(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)} SPSC: Simple Projection: pi(U41#) = 0 Strict: { U41#(X1, X2, mark(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)} EDG: {(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#(X1, active(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, mark(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#(mark(X1), 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#(X1, mark(X2), X3) -> U41#(X1, X2, X3)) (U41#(mark(X1), 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#(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, active(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, 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, 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))} SCCS: Scc: { U41#(X1, X2, mark(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)} SCC: Strict: { U41#(X1, X2, mark(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)} 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)} SPSC: Simple Projection: pi(U41#) = 2 Strict: { 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)} EDG: {(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#(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#(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))} SCCS: Scc: { 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)} SCC: Strict: { 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)} 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)} SPSC: Simple Projection: pi(U41#) = 0 Strict: { U41#(X1, mark(X2), X3) -> U41#(X1, X2, X3), U41#(X1, active(X2), X3) -> U41#(X1, X2, X3)} EDG: {(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, 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))} SCCS: Scc: { U41#(X1, mark(X2), X3) -> U41#(X1, X2, X3), U41#(X1, active(X2), X3) -> U41#(X1, X2, X3)} SCC: Strict: { U41#(X1, mark(X2), X3) -> U41#(X1, X2, X3), U41#(X1, active(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)} SPSC: Simple Projection: pi(U41#) = 1 Strict: {U41#(X1, active(X2), X3) -> U41#(X1, X2, X3)} EDG: {(U41#(X1, active(X2), X3) -> U41#(X1, X2, X3), U41#(X1, active(X2), X3) -> U41#(X1, X2, X3))} SCCS: Scc: {U41#(X1, active(X2), X3) -> U41#(X1, X2, X3)} SCC: Strict: {U41#(X1, active(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)} SPSC: Simple Projection: pi(U41#) = 1 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(x#) = 0 Strict: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2), x#(mark(X1), X2) -> x#(X1, X2)} EDG: {(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#(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#(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))} SCCS: Scc: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2), x#(mark(X1), X2) -> x#(X1, X2)} SCC: Strict: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2), x#(mark(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)} SPSC: Simple Projection: pi(x#) = 0 Strict: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2)} EDG: {(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#(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))} SCCS: Scc: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2)} SCC: Strict: { x#(X1, mark(X2)) -> x#(X1, X2), x#(X1, active(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)} SPSC: Simple Projection: pi(x#) = 1 Strict: {x#(X1, active(X2)) -> x#(X1, X2)} EDG: {(x#(X1, active(X2)) -> x#(X1, X2), x#(X1, active(X2)) -> x#(X1, X2))} SCCS: Scc: {x#(X1, active(X2)) -> x#(X1, X2)} SCC: Strict: {x#(X1, active(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)} SPSC: Simple Projection: pi(x#) = 1 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(U31#) = 0 Strict: {U31#(active(X)) -> U31#(X)} EDG: {(U31#(active(X)) -> U31#(X), U31#(active(X)) -> U31#(X))} SCCS: Scc: {U31#(active(X)) -> U31#(X)} SCC: Strict: {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)} SPSC: Simple Projection: pi(U31#) = 0 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(U21#) = 2 Strict: {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)} EDG: {(U21#(X1, mark(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#(mark(X1), 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#(X1, mark(X2), X3) -> U21#(X1, X2, X3)) (U21#(X1, mark(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#(active(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#(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#(X1, mark(X2), X3) -> U21#(X1, X2, X3)) (U21#(mark(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, active(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, active(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#(active(X1), 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, mark(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#(mark(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, 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, mark(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#(mark(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))} SCCS: Scc: {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: Strict: {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)} SPSC: Simple Projection: pi(U21#) = 2 Strict: { 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)} EDG: {(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#(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#(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, 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))} SCCS: Scc: { 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: Strict: { 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)} SPSC: Simple Projection: pi(U21#) = 0 Strict: { 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)} EDG: {(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#(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#(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))} SCCS: Scc: { 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)} SCC: Strict: { 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)} 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)} SPSC: Simple Projection: pi(U21#) = 0 Strict: { U21#(X1, mark(X2), X3) -> U21#(X1, X2, X3), U21#(X1, active(X2), X3) -> U21#(X1, X2, X3)} EDG: {(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, 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))} SCCS: Scc: { U21#(X1, mark(X2), X3) -> U21#(X1, X2, X3), U21#(X1, active(X2), X3) -> U21#(X1, X2, X3)} SCC: Strict: { U21#(X1, mark(X2), X3) -> U21#(X1, X2, X3), U21#(X1, active(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)} SPSC: Simple Projection: pi(U21#) = 1 Strict: {U21#(X1, active(X2), X3) -> U21#(X1, X2, X3)} EDG: {(U21#(X1, active(X2), X3) -> U21#(X1, X2, X3), U21#(X1, active(X2), X3) -> U21#(X1, X2, X3))} SCCS: Scc: {U21#(X1, active(X2), X3) -> U21#(X1, X2, X3)} SCC: Strict: {U21#(X1, active(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)} SPSC: Simple Projection: pi(U21#) = 1 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(plus#) = 0 Strict: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2), plus#(mark(X1), X2) -> plus#(X1, X2)} EDG: {(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#(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#(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))} SCCS: Scc: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2), plus#(mark(X1), X2) -> plus#(X1, X2)} SCC: Strict: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2), plus#(mark(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)} SPSC: Simple Projection: pi(plus#) = 0 Strict: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2)} EDG: {(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#(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))} SCCS: Scc: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2)} SCC: Strict: { plus#(X1, mark(X2)) -> plus#(X1, X2), plus#(X1, active(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)} SPSC: Simple Projection: pi(plus#) = 1 Strict: {plus#(X1, active(X2)) -> plus#(X1, X2)} EDG: {(plus#(X1, active(X2)) -> plus#(X1, X2), plus#(X1, active(X2)) -> plus#(X1, X2))} SCCS: Scc: {plus#(X1, active(X2)) -> plus#(X1, X2)} SCC: Strict: {plus#(X1, active(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)} SPSC: Simple Projection: pi(plus#) = 1 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(s#) = 0 Strict: {s#(active(X)) -> s#(X)} EDG: {(s#(active(X)) -> s#(X), s#(active(X)) -> s#(X))} SCCS: Scc: {s#(active(X)) -> s#(X)} SCC: Strict: {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)} SPSC: Simple Projection: pi(s#) = 0 Strict: {} Qed SCC: 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)} SPSC: Simple Projection: pi(U11#) = 1 Strict: {U11#(X1, active(X2)) -> U11#(X1, X2), U11#(mark(X1), X2) -> U11#(X1, X2), U11#(active(X1), X2) -> U11#(X1, X2)} EDG: {(U11#(mark(X1), X2) -> U11#(X1, X2), U11#(active(X1), 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#(X1, active(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#(mark(X1), X2) -> U11#(X1, X2)) (U11#(active(X1), X2) -> U11#(X1, X2), U11#(active(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#(mark(X1), X2) -> U11#(X1, X2)) (U11#(X1, active(X2)) -> U11#(X1, X2), U11#(active(X1), X2) -> U11#(X1, X2))} SCCS: Scc: {U11#(X1, active(X2)) -> U11#(X1, X2), U11#(mark(X1), X2) -> U11#(X1, X2), U11#(active(X1), X2) -> U11#(X1, X2)} SCC: Strict: {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)} SPSC: Simple Projection: pi(U11#) = 0 Strict: {U11#(X1, active(X2)) -> U11#(X1, X2), U11#(mark(X1), X2) -> U11#(X1, X2)} EDG: {(U11#(mark(X1), X2) -> U11#(X1, X2), U11#(mark(X1), 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, active(X2)) -> U11#(X1, X2), U11#(mark(X1), X2) -> U11#(X1, X2))} SCCS: Scc: {U11#(X1, active(X2)) -> U11#(X1, X2), U11#(mark(X1), X2) -> U11#(X1, X2)} SCC: Strict: {U11#(X1, active(X2)) -> U11#(X1, X2), U11#(mark(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)} SPSC: Simple Projection: pi(U11#) = 0 Strict: {U11#(X1, active(X2)) -> U11#(X1, X2)} EDG: {(U11#(X1, active(X2)) -> U11#(X1, X2), U11#(X1, active(X2)) -> U11#(X1, X2))} SCCS: Scc: {U11#(X1, active(X2)) -> U11#(X1, X2)} SCC: Strict: {U11#(X1, active(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)} SPSC: Simple Projection: pi(U11#) = 1 Strict: {} Qed SCC: 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)} POLY: Argument Filtering: pi(isNat) = [], pi(and) = [], pi(U41) = [], pi(x) = [], pi(U31) = [], pi(0) = [], pi(U21) = [], pi(plus) = [], pi(s) = [], pi(tt) = [], pi(U11) = [], pi(active#) = 0, pi(active) = [], pi(mark#) = [], pi(mark) = [] Usable Rules: {} Interpretation: [mark#] = 1, [U41] = 1, [U21] = 1, [and] = 1, [x] = 1, [plus] = 1, [U11] = 1, [isNat] = 1, [U31] = 0, [s] = 0 Strict: { mark#(U11(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> active#(U11(mark(X1), X2)), mark#(s(X)) -> 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#(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)} EDG: { (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(isNat(X)) -> active#(isNat(X))) (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)) -> 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)) -> mark#(X1)) (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)) -> mark#(X2)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(x(X1, X2)) -> mark#(X1)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(U31(X)) -> mark#(X)) (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)) -> mark#(X1)) (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)) -> mark#(X2)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(plus(X1, X2)) -> mark#(X1)) (active#(x(N, 0())) -> mark#(U31(isNat(N))), mark#(s(X)) -> mark#(X)) (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)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(isNat(X)) -> active#(isNat(X))) (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)) -> 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)) -> mark#(X1)) (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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(U31(X)) -> mark#(X)) (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)) -> mark#(X1)) (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)) -> mark#(X2)) (mark#(x(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(x(X1, X2)) -> mark#(X2), mark#(s(X)) -> mark#(X)) (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)) -> mark#(X1)) (mark#(U31(X)) -> mark#(X), mark#(isNat(X)) -> active#(isNat(X))) (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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) (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(plus(V1, V2))) -> mark#(and(isNat(V1), isNat(V2)))) (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)) -> mark#(plus(x(N, M), 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))) -> mark#(U41(and(isNat(M), isNat(N)), M, N))) (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())) -> mark#(U11(isNat(N), 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)) -> 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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) (mark#(U11(X1, X2)) -> mark#(X1), mark#(isNat(X)) -> active#(isNat(X))) (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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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))) -> 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)) -> 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)) -> mark#(plus(x(N, M), 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))) -> mark#(U41(and(isNat(M), isNat(N)), M, N))) (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())) -> mark#(U11(isNat(N), 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)) -> 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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) (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(plus(V1, V2))) -> mark#(and(isNat(V1), isNat(V2)))) (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#(and(tt(), X)) -> mark#(X)) (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#(x(N, 0())) -> mark#(U31(isNat(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)) -> 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#(plus(N, 0())) -> mark#(U11(isNat(N), 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#(U11(tt(), N)) -> mark#(N)) (active#(plus(N, s(M))) -> mark#(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#(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)) -> 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)) -> mark#(X1)) (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)) -> mark#(X2)) (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#(U31(X)) -> mark#(X)) (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)) -> mark#(X1)) (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)) -> mark#(X2)) (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#(s(X)) -> mark#(X)) (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)) -> mark#(X1)) (active#(U11(tt(), N)) -> mark#(N), mark#(isNat(X)) -> active#(isNat(X))) (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)) -> 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)) -> 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)) -> mark#(X)) (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)) -> 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)) -> mark#(X)) (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)) (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(plus(V1, V2))) -> mark#(and(isNat(V1), isNat(V2)))) (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)) -> mark#(plus(x(N, M), 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))) -> mark#(U41(and(isNat(M), isNat(N)), M, N))) (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())) -> mark#(U11(isNat(N), 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)) (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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(isNat(X)) -> active#(isNat(X))) (active#(x(N, s(M))) -> mark#(U41(and(isNat(M), isNat(N)), M, N)), mark#(U11(X1, X2)) -> mark#(X1)) (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#(s(X)) -> mark#(X)) (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#(plus(X1, X2)) -> 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#(U21(X1, X2, X3)) -> mark#(X1)) (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#(U31(X)) -> mark#(X)) (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#(x(X1, X2)) -> 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#(U41(X1, X2, X3)) -> mark#(X1)) (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#(and(X1, X2)) -> mark#(X1)) (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#(isNat(X)) -> active#(isNat(X))) (mark#(U41(X1, X2, X3)) -> active#(U41(mark(X1), X2, X3)), active#(U11(tt(), N)) -> mark#(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#(plus(N, 0())) -> mark#(U11(isNat(N), N))) (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#(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, 0())) -> mark#(U31(isNat(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#(and(tt(), X)) -> mark#(X)) (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#(isNat(plus(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)))) (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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(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, 0())) -> mark#(U11(isNat(N), 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#(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, 0())) -> mark#(U31(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#(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(plus(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#(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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(isNat(X)) -> active#(isNat(X))) (active#(U41(tt(), M, N)) -> mark#(plus(x(N, M), N)), mark#(U11(X1, X2)) -> mark#(X1)) (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#(s(X)) -> mark#(X)) (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#(plus(X1, X2)) -> 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#(U21(X1, X2, X3)) -> mark#(X1)) (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#(U31(X)) -> mark#(X)) (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#(x(X1, X2)) -> 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#(U41(X1, X2, X3)) -> mark#(X1)) (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#(and(X1, X2)) -> mark#(X1)) (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#(isNat(X)) -> active#(isNat(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, 0())) -> mark#(U11(isNat(N), 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#(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, 0())) -> mark#(U31(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#(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(plus(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)))) (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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(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#(s(X)) -> 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#(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#(U31(X)) -> 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#(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#(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#(isNat(X)) -> active#(isNat(X))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U11(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U11(X1, X2)) -> active#(U11(mark(X1), X2))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(s(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(plus(X1, X2)) -> 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#(U21(X1, X2, X3)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U21(X1, X2, X3)) -> active#(U21(mark(X1), X2, X3))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U31(X)) -> mark#(X)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(x(X1, X2)) -> 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#(U41(X1, X2, X3)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(U41(X1, X2, X3)) -> active#(U41(mark(X1), X2, X3))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(and(X1, X2)) -> mark#(X1)) (mark#(plus(X1, X2)) -> mark#(X2), mark#(and(X1, X2)) -> active#(and(mark(X1), X2))) (mark#(plus(X1, X2)) -> mark#(X2), mark#(isNat(X)) -> active#(isNat(X))) (active#(U21(tt(), M, N)) -> mark#(s(plus(N, M))), mark#(U11(X1, X2)) -> mark#(X1)) (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#(s(X)) -> mark#(X)) (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#(plus(X1, X2)) -> 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#(U21(X1, X2, X3)) -> mark#(X1)) (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#(U31(X)) -> mark#(X)) (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#(x(X1, X2)) -> 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#(U41(X1, X2, X3)) -> mark#(X1)) (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#(and(X1, X2)) -> mark#(X1)) (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#(isNat(X)) -> active#(isNat(X))) } SCCS: Scc: { mark#(U11(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> active#(U11(mark(X1), X2)), mark#(s(X)) -> 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#(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: Strict: { mark#(U11(X1, X2)) -> mark#(X1), mark#(U11(X1, X2)) -> active#(U11(mark(X1), X2)), mark#(s(X)) -> 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#(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)} Fail