TIMEOUT

The TRS could not be proven terminating. The proof attempt took 60002 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (31934ms).
 | – Problem 2 was processed with processor SubtermCriterion (3ms).
 | – Problem 3 was processed with processor DependencyGraph (6833ms).
 |    | – Problem 60 remains open; application of the following processors failed [].
 | – Problem 4 was processed with processor DependencyGraph (7091ms).
 |    | – Problem 61 remains open; application of the following processors failed [].
 | – Problem 5 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 51 remains open; application of the following processors failed [].
 | – Problem 6 was processed with processor DependencyGraph (7463ms).
 |    | – Problem 62 remains open; application of the following processors failed [].
 |    | – Problem 63 remains open; application of the following processors failed [].
 | – Problem 7 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (timeout)].
 | – Problem 8 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 52 remains open; application of the following processors failed [].
 | – Problem 9 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 10 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 11 was processed with processor SubtermCriterion (2ms).
 | – Problem 12 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 13 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 14 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 53 remains open; application of the following processors failed [].
 | – Problem 15 was processed with processor SubtermCriterion (2ms).
 | – Problem 16 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 17 was processed with processor SubtermCriterion (3ms).
 |    | – Problem 54 remains open; application of the following processors failed [].
 | – Problem 18 was processed with processor SubtermCriterion (3ms).
 | – Problem 19 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 20 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 21 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 22 was processed with processor SubtermCriterion (2ms).
 | – Problem 23 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 24 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 55 remains open; application of the following processors failed [].
 | – Problem 25 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 26 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 27 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 28 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 29 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 30 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 31 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 32 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 33 remains open; application of the following processors failed [SubtermCriterion (5ms)].
 | – Problem 34 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 35 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 36 remains open; application of the following processors failed [SubtermCriterion (63ms)].
 | – Problem 37 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 38 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 56 remains open; application of the following processors failed [].
 | – Problem 39 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 40 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 41 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 42 remains open; application of the following processors failed [SubtermCriterion (2ms)].
 | – Problem 43 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 44 was processed with processor SubtermCriterion (1ms).
 |    | – Problem 59 remains open; application of the following processors failed [].
 | – Problem 45 was processed with processor SubtermCriterion (2ms).
 | – Problem 46 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 57 remains open; application of the following processors failed [].
 | – Problem 47 was processed with processor SubtermCriterion (2ms).
 |    | – Problem 58 remains open; application of the following processors failed [].
 | – Problem 48 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 49 remains open; application of the following processors failed [SubtermCriterion (1ms)].
 | – Problem 50 remains open; application of the following processors failed [SubtermCriterion (4ms)].

The following open problems remain:



Open Dependency Pair Problem 3

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 4

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
active#(isNat(x(V1, V2)))isNat#(V1)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U52(tt, M, N))plus#(N, M)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(U52(tt, M, N))s#(plus(N, M))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 5

Dependency Pairs

U52#(X1, mark(X2), X3)U52#(X1, X2, X3)U52#(X1, X2, mark(X3))U52#(X1, X2, X3)
U52#(X1, X2, active(X3))U52#(X1, X2, X3)U52#(X1, active(X2), X3)U52#(X1, X2, X3)
U52#(active(X1), X2, X3)U52#(X1, X2, X3)U52#(mark(X1), X2, X3)U52#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 6

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)U32#(mark(X))U32#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(isNat(X))isNat#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 7

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))active#(U72(tt, M, N))plus#(x(N, M), N)
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 8

Dependency Pairs

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)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 9

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(plus(N, s(M)))U51#(isNat(M), M, N)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)active#(isNat(x(V1, V2)))U31#(isNat(V1), V2)
mark#(U12(X))active#(U12(mark(X)))active#(U11(tt, V2))U12#(isNat(V2))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))active#(x(N, 0))isNat#(N)
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N))plus#(x(N, M), N)mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))active#(x(N, s(M)))isNat#(M)
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 10

Dependency Pairs

active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U11(X1, X2))mark#(X1)
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
active#(U12(tt))mark#(tt)mark#(x(X1, X2))mark#(X2)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))active#(x(N, 0))isNat#(N)
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
active#(x(N, s(M)))isNat#(M)mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 12

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(U61(tt))mark#(0)active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))active#(U72(tt, M, N))plus#(x(N, M), N)
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 13

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
active#(isNat(x(V1, V2)))isNat#(V1)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))active#(U11(tt, V2))U12#(isNat(V2))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 14

Dependency Pairs

U41#(X1, mark(X2))U41#(X1, X2)U41#(X1, active(X2))U41#(X1, X2)
U41#(mark(X1), X2)U41#(X1, X2)U41#(active(X1), X2)U41#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 17

Dependency Pairs

U72#(X1, active(X2), X3)U72#(X1, X2, X3)U72#(active(X1), X2, X3)U72#(X1, X2, X3)
U72#(X1, X2, active(X3))U72#(X1, X2, X3)U72#(mark(X1), X2, X3)U72#(X1, X2, X3)
U72#(X1, X2, mark(X3))U72#(X1, X2, X3)U72#(X1, mark(X2), X3)U72#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 16

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
active#(U12(tt))mark#(tt)mark#(x(X1, X2))mark#(X2)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(U61(X))active#(U61(mark(X)))
mark#(plus(X1, X2))mark#(X2)active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(U12(X))mark#(X)
mark#(0)active#(0)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 19

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
mark#(isNat(X))isNat#(X)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 21

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)active#(isNat(x(V1, V2)))isNat#(V1)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U11(tt, V2))U12#(isNat(V2))
active#(U12(tt))mark#(tt)mark#(x(X1, X2))mark#(X2)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 20

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
mark#(isNat(X))isNat#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N))plus#(x(N, M), N)mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(U51(tt, M, N))isNat#(N)
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 23

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(isNat(X))isNat#(X)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N))plus#(x(N, M), N)mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(U51(tt, M, N))isNat#(N)active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 25

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)active#(isNat(x(V1, V2)))isNat#(V1)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
mark#(isNat(X))isNat#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 24

Dependency Pairs

U71#(X1, X2, active(X3))U71#(X1, X2, X3)U71#(active(X1), X2, X3)U71#(X1, X2, X3)
U71#(X1, active(X2), X3)U71#(X1, X2, X3)U71#(mark(X1), X2, X3)U71#(X1, X2, X3)
U71#(X1, mark(X2), X3)U71#(X1, X2, X3)U71#(X1, X2, mark(X3))U71#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 27

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(isNat(X))isNat#(X)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(U12(X))mark#(X)
mark#(0)active#(0)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 26

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(isNat(X))isNat#(X)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 29

Dependency Pairs

active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U11(X1, X2))mark#(X1)
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
active#(x(N, 0))isNat#(N)mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))active#(x(N, s(M)))isNat#(M)
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 28

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
active#(isNat(x(V1, V2)))isNat#(V1)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(isNat(X))isNat#(X)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
U32#(active(X))U32#(X)mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 31

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)active#(isNat(x(V1, V2)))isNat#(V1)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))active#(x(N, 0))isNat#(N)
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
active#(x(N, s(M)))isNat#(M)mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 30

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
mark#(isNat(X))isNat#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
U32#(active(X))U32#(X)mark#(U12(X))mark#(X)
mark#(0)active#(0)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 34

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N))plus#(x(N, M), N)mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 35

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(isNat(X))isNat#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(U12(X))mark#(X)
mark#(0)active#(0)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 32

Dependency Pairs

active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U11(X1, X2))mark#(X1)
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(U61(tt))mark#(0)
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U72(tt, M, N))mark#(plus(x(N, M), N))
active#(U52(tt, M, N))plus#(N, M)mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(U52(tt, M, N))s#(plus(N, M))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
mark#(isNat(X))isNat#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 33

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)active#(isNat(x(V1, V2)))isNat#(V1)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U61(X))mark#(X)mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 38

Dependency Pairs

U11#(X1, active(X2))U11#(X1, X2)U11#(active(X1), X2)U11#(X1, X2)
U11#(mark(X1), X2)U11#(X1, X2)U11#(X1, mark(X2))U11#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 39

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)active#(isNat(x(V1, V2)))isNat#(V1)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
active#(U11(tt, V2))U12#(isNat(V2))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)active#(U31(tt, V2))mark#(U32(isNat(V2)))
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 36

Dependency Pairs

U32#(active(X))U32#(X)mark#(U32(X))U32#(mark(X))
U32#(mark(X))U32#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 37

Dependency Pairs

active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U11(X1, X2))mark#(X1)
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
active#(x(N, 0))isNat#(N)mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
active#(x(N, s(M)))isNat#(M)mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 42

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))active#(U11(tt, V2))U12#(isNat(V2))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 43

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3))mark#(X1)active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
active#(U11(tt, V2))U12#(isNat(V2))mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 40

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
active#(U52(tt, M, N))plus#(N, M)mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(U52(tt, M, N))s#(plus(N, M))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
mark#(isNat(X))isNat#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 41

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U32(X))U32#(mark(X))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
active#(U11(tt, V2))U12#(isNat(V2))mark#(plus(X1, X2))mark#(X1)
active#(U12(tt))mark#(tt)mark#(x(X1, X2))mark#(X2)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(isNat(X))isNat#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 46

Dependency Pairs

U31#(active(X1), X2)U31#(X1, X2)U31#(X1, active(X2))U31#(X1, X2)
U31#(X1, mark(X2))U31#(X1, X2)U31#(mark(X1), X2)U31#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 47

Dependency Pairs

U51#(X1, active(X2), X3)U51#(X1, X2, X3)U51#(mark(X1), X2, X3)U51#(X1, X2, X3)
U51#(X1, mark(X2), X3)U51#(X1, X2, X3)U51#(X1, X2, active(X3))U51#(X1, X2, X3)
U51#(X1, X2, mark(X3))U51#(X1, X2, X3)U51#(active(X1), X2, X3)U51#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 44

Dependency Pairs

x#(mark(X1), X2)x#(X1, X2)x#(X1, active(X2))x#(X1, X2)
x#(X1, mark(X2))x#(X1, X2)x#(active(X1), X2)x#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 50

Dependency Pairs

mark#(U32(X))U32#(mark(X))mark#(U11(X1, X2))mark#(X1)
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(U61(tt))mark#(0)active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N))mark#(plus(x(N, M), N))active#(U52(tt, M, N))plus#(N, M)
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(U32(tt))mark#(tt)
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
active#(x(N, s(M)))U71#(isNat(M), M, N)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
mark#(isNat(X))active#(isNat(X))active#(x(N, 0))isNat#(N)
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
active#(x(N, s(M)))isNat#(M)mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 49

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
active#(U52(tt, M, N))plus#(N, M)mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)mark#(x(X1, X2))mark#(X2)
active#(U12(tt))mark#(tt)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(isNat(X))isNat#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x




Open Dependency Pair Problem 48

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
active#(isNat(x(V1, V2)))isNat#(V1)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(U32(tt))mark#(tt)active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(U71(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))active#(x(N, 0))U61#(isNat(N))
active#(U11(tt, V2))mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3))mark#(X1)
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)mark#(U12(X))active#(U12(mark(X)))
mark#(plus(X1, X2))mark#(X1)active#(U12(tt))mark#(tt)
mark#(x(X1, X2))mark#(X2)active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))
active#(U31(tt, V2))U32#(isNat(V2))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U32#(mark(X))U32#(X)active#(isNat(plus(V1, V2)))isNat#(V1)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))U32#(active(X))U32#(X)
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(s(X))active#(s(mark(X)))mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, active, U11, U12, U31, U32, U21, x


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(U32(X))U32#(mark(X))active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U11(X1, X2))mark#(X1)mark#(U61(X))U61#(mark(X))
U11#(mark(X1), X2)U11#(X1, X2)U72#(mark(X1), X2, X3)U72#(X1, X2, X3)
U72#(X1, X2, mark(X3))U72#(X1, X2, X3)x#(active(X1), X2)x#(X1, X2)
x#(X1, active(X2))x#(X1, X2)active#(U61(tt))mark#(0)
mark#(U52(X1, X2, X3))U52#(mark(X1), X2, X3)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
isNat#(active(X))isNat#(X)U71#(X1, mark(X2), X3)U71#(X1, X2, X3)
mark#(s(X))mark#(X)x#(X1, mark(X2))x#(X1, X2)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
active#(plus(N, 0))isNat#(N)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
U51#(X1, X2, active(X3))U51#(X1, X2, X3)active#(x(N, 0))U61#(isNat(N))
U11#(active(X1), X2)U11#(X1, X2)mark#(U52(X1, X2, X3))mark#(X1)
U71#(mark(X1), X2, X3)U71#(X1, X2, X3)U41#(active(X1), X2)U41#(X1, X2)
active#(isNat(x(V1, V2)))U31#(isNat(V1), V2)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))U11#(X1, mark(X2))U11#(X1, X2)
U11#(X1, active(X2))U11#(X1, X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
U72#(X1, X2, active(X3))U72#(X1, X2, X3)U61#(active(X))U61#(X)
plus#(mark(X1), X2)plus#(X1, X2)active#(plus(N, 0))U41#(isNat(N), N)
plus#(active(X1), X2)plus#(X1, X2)active#(x(N, 0))isNat#(N)
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
U31#(X1, active(X2))U31#(X1, X2)U32#(mark(X))U32#(X)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
x#(mark(X1), X2)x#(X1, X2)U71#(active(X1), X2, X3)U71#(X1, X2, X3)
U41#(X1, active(X2))U41#(X1, X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(isNat(s(V1)))isNat#(V1)active#(U52(tt, M, N))mark#(s(plus(N, M)))
active#(U72(tt, M, N))x#(N, M)U51#(mark(X1), X2, X3)U51#(X1, X2, X3)
mark#(0)active#(0)U52#(X1, X2, mark(X3))U52#(X1, X2, X3)
mark#(s(X))active#(s(mark(X)))U61#(mark(X))U61#(X)
U52#(X1, active(X2), X3)U52#(X1, X2, X3)mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))U52#(active(X1), X2, X3)U52#(X1, X2, X3)
U71#(X1, X2, mark(X3))U71#(X1, X2, X3)active#(U51(tt, M, N))U52#(isNat(N), M, N)
mark#(U71(X1, X2, X3))U71#(mark(X1), X2, X3)active#(isNat(plus(V1, V2)))U11#(isNat(V1), V2)
active#(x(N, s(M)))isNat#(M)active#(plus(N, s(M)))isNat#(M)
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U31(tt, V2))isNat#(V2)
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))x#(mark(X1), mark(X2))mark#(U21(X))U21#(mark(X))
mark#(x(X1, X2))mark#(X1)mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)U12#(mark(X))U12#(X)
mark#(s(X))s#(mark(X))mark#(U41(X1, X2))active#(U41(mark(X1), X2))
U52#(X1, mark(X2), X3)U52#(X1, X2, X3)U51#(X1, active(X2), X3)U51#(X1, X2, X3)
U52#(X1, X2, active(X3))U52#(X1, X2, X3)active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(plus(N, s(M)))U51#(isNat(M), M, N)plus#(X1, mark(X2))plus#(X1, X2)
U31#(active(X1), X2)U31#(X1, X2)active#(U52(tt, M, N))plus#(N, M)
U71#(X1, active(X2), X3)U71#(X1, X2, X3)mark#(U31(X1, X2))mark#(X1)
active#(U32(tt))mark#(tt)mark#(U71(X1, X2, X3))mark#(X1)
active#(U52(tt, M, N))s#(plus(N, M))U51#(X1, mark(X2), X3)U51#(X1, X2, X3)
mark#(U12(X))U12#(mark(X))active#(U11(tt, V2))mark#(U12(isNat(V2)))
U41#(X1, mark(X2))U41#(X1, X2)active#(isNat(0))mark#(tt)
U72#(X1, active(X2), X3)U72#(X1, X2, X3)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(U71(tt, M, N))isNat#(N)
mark#(plus(X1, X2))mark#(X1)mark#(U41(X1, X2))U41#(mark(X1), X2)
active#(U11(tt, V2))U12#(isNat(V2))mark#(x(X1, X2))mark#(X2)
U12#(active(X))U12#(X)plus#(X1, active(X2))plus#(X1, X2)
U51#(active(X1), X2, X3)U51#(X1, X2, X3)mark#(isNat(X))active#(isNat(X))
U71#(X1, X2, active(X3))U71#(X1, X2, X3)U72#(active(X1), X2, X3)U72#(X1, X2, X3)
mark#(isNat(X))isNat#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)isNat#(mark(X))isNat#(X)
U31#(X1, mark(X2))U31#(X1, X2)mark#(U61(X))active#(U61(mark(X)))
mark#(plus(X1, X2))mark#(X2)active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N))plus#(x(N, M), N)mark#(U11(X1, X2))U11#(mark(X1), X2)
U41#(mark(X1), X2)U41#(X1, X2)U32#(active(X))U32#(X)
mark#(U12(X))mark#(X)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
active#(U11(tt, V2))isNat#(V2)U21#(mark(X))U21#(X)
U21#(active(X))U21#(X)active#(U71(tt, M, N))U72#(isNat(N), M, N)
U51#(X1, X2, mark(X3))U51#(X1, X2, X3)mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(U51(tt, M, N))isNat#(N)active#(isNat(s(V1)))mark#(U21(isNat(V1)))
U31#(mark(X1), X2)U31#(X1, X2)s#(mark(X))s#(X)
mark#(U31(X1, X2))U31#(mark(X1), X2)mark#(U51(X1, X2, X3))U51#(mark(X1), X2, X3)
mark#(U32(X))active#(U32(mark(X)))s#(active(X))s#(X)
U52#(mark(X1), X2, X3)U52#(X1, X2, X3)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))
U72#(X1, mark(X2), X3)U72#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


The following SCCs where found

U41#(X1, mark(X2)) → U41#(X1, X2)U41#(mark(X1), X2) → U41#(X1, X2)
U41#(X1, active(X2)) → U41#(X1, X2)U41#(active(X1), X2) → U41#(X1, X2)

x#(X1, active(X2)) → x#(X1, X2)x#(mark(X1), X2) → x#(X1, X2)
x#(X1, mark(X2)) → x#(X1, X2)x#(active(X1), X2) → x#(X1, X2)

U32#(active(X)) → U32#(X)U32#(mark(X)) → U32#(X)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U32(X)) → U32#(mark(X))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)U32#(mark(X)) → U32#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(isNat(X)) → isNat#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(isNat(x(V1, V2))) → isNat#(V1)active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U32(X)) → U32#(mark(X))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(isNat(x(V1, V2))) → isNat#(V1)
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)mark#(isNat(X)) → isNat#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(0) → active#(0)
mark#(U12(X)) → mark#(X)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))active#(U11(tt, V2)) → U12#(isNat(V2))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(isNat(x(V1, V2))) → isNat#(V1)active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(isNat(X)) → isNat#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(isNat(X)) → isNat#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(0) → active#(0)
mark#(U12(X)) → mark#(X)mark#(s(X)) → active#(s(mark(X)))
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U71#(X1, X2, active(X3)) → U71#(X1, X2, X3)U71#(active(X1), X2, X3) → U71#(X1, X2, X3)
U71#(mark(X1), X2, X3) → U71#(X1, X2, X3)U71#(X1, active(X2), X3) → U71#(X1, X2, X3)
U71#(X1, mark(X2), X3) → U71#(X1, X2, X3)U71#(X1, X2, mark(X3)) → U71#(X1, X2, X3)

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U11(tt, V2)) → U12#(isNat(V2))active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U31#(active(X1), X2) → U31#(X1, X2)U31#(X1, active(X2)) → U31#(X1, X2)
U31#(mark(X1), X2) → U31#(X1, X2)U31#(X1, mark(X2)) → U31#(X1, X2)

mark#(U32(X)) → U32#(mark(X))mark#(U11(X1, X2)) → mark#(X1)
active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
mark#(x(X1, X2)) → mark#(X2)active#(U12(tt)) → mark#(tt)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))active#(x(N, 0)) → isNat#(N)
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
active#(x(N, s(M))) → isNat#(M)mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U52(tt, M, N)) → plus#(N, M)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(isNat(X)) → isNat#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(isNat(X)) → isNat#(X)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N)) → plus#(x(N, M), N)mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(U51(tt, M, N)) → isNat#(N)
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U61(tt)) → mark#(0)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))active#(U72(tt, M, N)) → plus#(x(N, M), N)
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U12#(active(X)) → U12#(X)U12#(mark(X)) → U12#(X)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
mark#(isNat(X)) → isNat#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N)) → plus#(x(N, M), N)mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(U51(tt, M, N)) → isNat#(N)active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(isNat(x(V1, V2))) → isNat#(V1)active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))active#(x(N, 0)) → isNat#(N)
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
active#(x(N, s(M))) → isNat#(M)mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(isNat(X)) → isNat#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)U32#(active(X)) → U32#(X)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(0) → active#(0)
mark#(U12(X)) → mark#(X)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

isNat#(active(X)) → isNat#(X)isNat#(mark(X)) → isNat#(X)

mark#(U11(X1, X2)) → mark#(X1)active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
active#(x(N, 0)) → isNat#(N)mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))active#(x(N, s(M))) → isNat#(M)
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(isNat(x(V1, V2))) → isNat#(V1)active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
active#(U11(tt, V2)) → U12#(isNat(V2))mark#(plus(X1, X2)) → mark#(X1)
mark#(x(X1, X2)) → mark#(X2)active#(U12(tt)) → mark#(tt)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U32(X)) → U32#(mark(X))mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U61(tt)) → mark#(0)
active#(U52(tt, M, N)) → plus#(N, M)active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))active#(x(N, 0)) → isNat#(N)
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
active#(x(N, s(M))) → isNat#(M)mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(x(N, 0)) → U61#(isNat(N))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U52(tt, M, N)) → plus#(N, M)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(U52(tt, M, N)) → s#(plus(N, M))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(isNat(X)) → isNat#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

s#(mark(X)) → s#(X)s#(active(X)) → s#(X)

U51#(X1, active(X2), X3) → U51#(X1, X2, X3)U51#(mark(X1), X2, X3) → U51#(X1, X2, X3)
U51#(X1, mark(X2), X3) → U51#(X1, X2, X3)U51#(X1, X2, active(X3)) → U51#(X1, X2, X3)
U51#(X1, X2, mark(X3)) → U51#(X1, X2, X3)U51#(active(X1), X2, X3) → U51#(X1, X2, X3)

U32#(active(X)) → U32#(X)mark#(U32(X)) → U32#(mark(X))
U32#(mark(X)) → U32#(X)

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(isNat(x(V1, V2))) → isNat#(V1)
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U11(tt, V2)) → U12#(isNat(V2))active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U11#(X1, active(X2)) → U11#(X1, X2)U11#(active(X1), X2) → U11#(X1, X2)
U11#(mark(X1), X2) → U11#(X1, X2)U11#(X1, mark(X2)) → U11#(X1, X2)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))active#(U72(tt, M, N)) → plus#(x(N, M), N)
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U32(X)) → U32#(mark(X))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)mark#(isNat(X)) → isNat#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

mark#(U11(X1, X2)) → mark#(X1)active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(x(N, 0)) → U61#(isNat(N))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
active#(x(N, 0)) → isNat#(N)mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
active#(x(N, s(M))) → isNat#(M)mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(isNat(plus(V1, V2))) → isNat#(V1)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N)) → plus#(x(N, M), N)mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(s(X)) → active#(s(mark(X)))mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(U71(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)mark#(isNat(X)) → isNat#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U41(X1, X2)) → mark#(X1)
mark#(U61(X)) → mark#(X)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
U32#(active(X)) → U32#(X)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(0) → active#(0)mark#(U12(X)) → mark#(X)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U72#(active(X1), X2, X3) → U72#(X1, X2, X3)U72#(X1, active(X2), X3) → U72#(X1, X2, X3)
U72#(X1, X2, active(X3)) → U72#(X1, X2, X3)U72#(X1, X2, mark(X3)) → U72#(X1, X2, X3)
U72#(mark(X1), X2, X3) → U72#(X1, X2, X3)U72#(X1, mark(X2), X3) → U72#(X1, X2, X3)

plus#(X1, active(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)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(isNat(x(V1, V2))) → isNat#(V1)active#(U21(tt)) → mark#(tt)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(x(N, s(M))) → U71#(isNat(M), M, N)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U11(tt, V2)) → U12#(isNat(V2))
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(s(X)) → active#(s(mark(X)))mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U61#(mark(X)) → U61#(X)U61#(active(X)) → U61#(X)

mark#(U32(X)) → U32#(mark(X))active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(U21(tt)) → mark#(tt)
active#(isNat(x(V1, V2))) → isNat#(V1)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U11(tt, V2)) → U12#(isNat(V2))
mark#(x(X1, X2)) → mark#(X2)active#(U12(tt)) → mark#(tt)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(isNat(X)) → isNat#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U32(X)) → U32#(mark(X))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(isNat(x(V1, V2))) → isNat#(V1)
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))active#(U52(tt, M, N)) → plus#(N, M)
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(U52(tt, M, N)) → s#(plus(N, M))active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U12(tt)) → mark#(tt)mark#(x(X1, X2)) → mark#(X2)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → U21#(isNat(V1))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U52#(X1, mark(X2), X3) → U52#(X1, X2, X3)U52#(X1, X2, mark(X3)) → U52#(X1, X2, X3)
U52#(X1, X2, active(X3)) → U52#(X1, X2, X3)U52#(X1, active(X2), X3) → U52#(X1, X2, X3)
U52#(active(X1), X2, X3) → U52#(X1, X2, X3)U52#(mark(X1), X2, X3) → U52#(X1, X2, X3)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(plus(N, s(M))) → U51#(isNat(M), M, N)active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))active#(plus(N, 0)) → isNat#(N)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(x(N, 0)) → U61#(isNat(N))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
active#(isNat(x(V1, V2))) → U31#(isNat(V1), V2)active#(x(N, s(M))) → U71#(isNat(M), M, N)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
active#(U11(tt, V2)) → U12#(isNat(V2))active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))active#(x(N, 0)) → isNat#(N)
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
active#(U72(tt, M, N)) → plus#(x(N, M), N)mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))active#(x(N, s(M))) → isNat#(M)
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(U61(tt)) → mark#(0)
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))
mark#(U31(X1, X2)) → mark#(X1)mark#(s(X)) → mark#(X)
active#(U32(tt)) → mark#(tt)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(isNat(0)) → mark#(tt)
active#(x(N, 0)) → mark#(U61(isNat(N)))mark#(U72(X1, X2, X3)) → mark#(X1)
mark#(U12(X)) → active#(U12(mark(X)))mark#(plus(X1, X2)) → mark#(X1)
mark#(x(X1, X2)) → mark#(X2)active#(U12(tt)) → mark#(tt)
active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))active#(U31(tt, V2)) → U32#(isNat(V2))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2))) → isNat#(V1)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(plus(X1, X2)) → mark#(X2)
mark#(U61(X)) → active#(U61(mark(X)))active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2)) → U11#(mark(X1), X2)mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(0) → active#(0)
mark#(U12(X)) → mark#(X)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

mark#(U11(X1, X2)) → mark#(X1)active#(plus(N, 0)) → mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)active#(isNat(x(V1, V2))) → isNat#(V1)
mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U61(tt)) → mark#(0)active#(U52(tt, M, N)) → plus#(N, M)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(U71(X1, X2, X3)) → mark#(X1)
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))active#(U52(tt, M, N)) → s#(plus(N, M))
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)active#(U12(tt)) → mark#(tt)
mark#(x(X1, X2)) → mark#(X2)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
active#(U31(tt, V2)) → mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2))) → isNat#(V1)
mark#(isNat(X)) → isNat#(X)mark#(U21(X)) → mark#(X)
mark#(U51(X1, X2, X3)) → mark#(X1)mark#(U61(X)) → active#(U61(mark(X)))
mark#(plus(X1, X2)) → mark#(X2)active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))
mark#(U41(X1, X2)) → mark#(X1)active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))
mark#(U61(X)) → mark#(X)mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)active#(U52(tt, M, N)) → mark#(s(plus(N, M)))
mark#(U12(X)) → mark#(X)mark#(0) → active#(0)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))mark#(plus(X1, X2)) → plus#(mark(X1), mark(X2))
active#(isNat(s(V1))) → mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))mark#(U32(X)) → active#(U32(mark(X)))
mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))mark#(x(X1, X2)) → mark#(X1)
mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U21#(mark(X)) → U21#(X)U21#(active(X)) → U21#(X)

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U32(X)) → U32#(mark(X))
mark#(U11(X1, X2)) → mark#(X1)mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))
mark#(U21(X)) → active#(U21(mark(X)))active#(isNat(x(V1, V2))) → isNat#(V1)
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(U61(tt)) → mark#(0)active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)active#(U32(tt)) → mark#(tt)
mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
active#(plus(N, 0)) → isNat#(N)mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))
mark#(U71(X1, X2, X3)) → mark#(X1)active#(x(N, 0)) → U61#(isNat(N))
mark#(U52(X1, X2, X3)) → mark#(X1)active#(U11(tt, V2)) → mark#(U12(isNat(V2)))
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
active#(U31(tt, V2)) → U32#(isNat(V2))mark#(isNat(X)) → active#(isNat(X))
mark#(tt) → active#(tt)mark#(U32(X)) → mark#(X)
U32#(mark(X)) → U32#(X)mark#(isNat(X)) → isNat#(X)
active#(isNat(plus(V1, V2))) → isNat#(V1)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U11(X1, X2)) → U11#(mark(X1), X2)
mark#(U41(X1, X2)) → mark#(X1)mark#(U61(X)) → mark#(X)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))
active#(U41(tt, N)) → mark#(N)U32#(active(X)) → U32#(X)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(U72(X1, X2, X3)) → U72#(mark(X1), X2, X3)
mark#(s(X)) → active#(s(mark(X)))mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1))) → U21#(isNat(V1))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U32#(active(X))U32#(X)U32#(mark(X))U32#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U32#(active(X))U32#(X)U32#(mark(X))U32#(X)

Problem 3: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)active#(plus(N, 0))mark#(U41(isNat(N), N))
mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))mark#(U21(X))active#(U21(mark(X)))
active#(isNat(x(V1, V2)))isNat#(V1)active#(U21(tt))mark#(tt)
mark#(U41(X1, X2))active#(U41(mark(X1), X2))active#(x(N, s(M)))mark#(U71(isNat(M), M, N))
active#(U61(tt))mark#(0)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
active#(U32(tt))mark#(tt)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))mark#(U52(X1, X2, X3))mark#(X1)
active#(U11(tt, V2))mark#(U12(isNat(V2)))active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)active#(U31(tt, V2))mark#(U32(isNat(V2)))
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
mark#(U61(X))mark#(X)active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
active#(U52(tt, M, N))mark#(s(plus(N, M)))mark#(0)active#(0)
mark#(U12(X))mark#(X)mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)
mark#(s(X))active#(s(mark(X)))mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))
active#(isNat(s(V1)))U21#(isNat(V1))mark#(plus(X1, X2))plus#(mark(X1), mark(X2))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


The following SCCs where found

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U61(tt)) → mark#(0)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(U32(tt)) → mark#(tt)active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

Problem 4: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(U21(tt))mark#(tt)
active#(isNat(x(V1, V2)))isNat#(V1)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U52(tt, M, N))plus#(N, M)active#(U72(tt, M, N))mark#(plus(x(N, M), N))
mark#(U31(X1, X2))mark#(X1)mark#(s(X))mark#(X)
active#(U32(tt))mark#(tt)mark#(U11(X1, X2))active#(U11(mark(X1), X2))
active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))active#(plus(N, 0))isNat#(N)
mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3))mark#(X1)
active#(U52(tt, M, N))s#(plus(N, M))active#(x(N, 0))U61#(isNat(N))
mark#(U52(X1, X2, X3))mark#(X1)active#(U11(tt, V2))mark#(U12(isNat(V2)))
active#(isNat(0))mark#(tt)active#(x(N, 0))mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3))mark#(X1)active#(x(N, s(M)))U71#(isNat(M), M, N)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))mark#(isNat(X))active#(isNat(X))
mark#(tt)active#(tt)mark#(U32(X))mark#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))active#(isNat(plus(V1, V2)))isNat#(V1)
mark#(U21(X))mark#(X)mark#(U51(X1, X2, X3))mark#(X1)
mark#(plus(X1, X2))mark#(X2)mark#(U61(X))active#(U61(mark(X)))
active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))mark#(U11(X1, X2))U11#(mark(X1), X2)
mark#(U41(X1, X2))mark#(X1)mark#(U61(X))mark#(X)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U31(X1, X2))active#(U31(mark(X1), X2))
active#(U41(tt, N))mark#(N)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(U12(X))mark#(X)mark#(0)active#(0)
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
active#(isNat(s(V1)))mark#(U21(isNat(V1)))mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))
active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))mark#(U32(X))active#(U32(mark(X)))
mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))mark#(x(X1, X2))mark#(X1)
mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


The following SCCs where found

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U61(tt)) → mark#(0)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(U32(tt)) → mark#(tt)active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

Problem 5: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U52#(X1, mark(X2), X3)U52#(X1, X2, X3)U52#(X1, X2, mark(X3))U52#(X1, X2, X3)
U52#(X1, X2, active(X3))U52#(X1, X2, X3)U52#(X1, active(X2), X3)U52#(X1, X2, X3)
U52#(active(X1), X2, X3)U52#(X1, X2, X3)U52#(mark(X1), X2, X3)U52#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U52#(active(X1), X2, X3)U52#(X1, X2, X3)U52#(mark(X1), X2, X3)U52#(X1, X2, X3)

Problem 6: DependencyGraph



Dependency Pair Problem

Dependency Pairs

mark#(U11(X1, X2))mark#(X1)mark#(U32(X))U32#(mark(X))
active#(plus(N, 0))mark#(U41(isNat(N), N))mark#(U71(X1, X2, X3))active#(U71(mark(X1), X2, X3))
mark#(U21(X))active#(U21(mark(X)))active#(isNat(x(V1, V2)))isNat#(V1)
active#(U21(tt))mark#(tt)mark#(U41(X1, X2))active#(U41(mark(X1), X2))
active#(x(N, s(M)))mark#(U71(isNat(M), M, N))active#(U61(tt))mark#(0)
active#(U72(tt, M, N))mark#(plus(x(N, M), N))mark#(U31(X1, X2))mark#(X1)
mark#(s(X))mark#(X)active#(U32(tt))mark#(tt)
mark#(U11(X1, X2))active#(U11(mark(X1), X2))active#(plus(N, s(M)))mark#(U51(isNat(M), M, N))
mark#(U71(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))active#(plus(mark(X1), mark(X2)))
active#(x(N, 0))U61#(isNat(N))active#(U11(tt, V2))mark#(U12(isNat(V2)))
mark#(U52(X1, X2, X3))mark#(X1)active#(isNat(0))mark#(tt)
active#(x(N, 0))mark#(U61(isNat(N)))mark#(U72(X1, X2, X3))mark#(X1)
mark#(U12(X))active#(U12(mark(X)))mark#(plus(X1, X2))mark#(X1)
mark#(x(X1, X2))mark#(X2)active#(U12(tt))mark#(tt)
active#(U51(tt, M, N))mark#(U52(isNat(N), M, N))active#(U31(tt, V2))U32#(isNat(V2))
mark#(isNat(X))active#(isNat(X))mark#(tt)active#(tt)
mark#(U32(X))mark#(X)U32#(mark(X))U32#(X)
active#(U31(tt, V2))mark#(U32(isNat(V2)))mark#(isNat(X))isNat#(X)
active#(isNat(plus(V1, V2)))isNat#(V1)mark#(U21(X))mark#(X)
mark#(U51(X1, X2, X3))mark#(X1)mark#(plus(X1, X2))mark#(X2)
mark#(U61(X))active#(U61(mark(X)))active#(isNat(x(V1, V2)))mark#(U31(isNat(V1), V2))
mark#(U11(X1, X2))U11#(mark(X1), X2)mark#(U41(X1, X2))mark#(X1)
active#(isNat(plus(V1, V2)))mark#(U11(isNat(V1), V2))mark#(U61(X))mark#(X)
mark#(U31(X1, X2))active#(U31(mark(X1), X2))active#(U41(tt, N))mark#(N)
U32#(active(X))U32#(X)active#(U52(tt, M, N))mark#(s(plus(N, M)))
mark#(0)active#(0)mark#(U12(X))mark#(X)
mark#(U72(X1, X2, X3))U72#(mark(X1), X2, X3)mark#(s(X))active#(s(mark(X)))
mark#(x(X1, X2))active#(x(mark(X1), mark(X2)))active#(isNat(s(V1)))U21#(isNat(V1))
mark#(plus(X1, X2))plus#(mark(X1), mark(X2))active#(isNat(s(V1)))mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3))active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N))mark#(U72(isNat(N), M, N))
mark#(U32(X))active#(U32(mark(X)))mark#(U72(X1, X2, X3))active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2))mark#(X1)mark#(U52(X1, X2, X3))active#(U52(mark(X1), X2, X3))

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


The following SCCs where found

active#(plus(N, 0)) → mark#(U41(isNat(N), N))mark#(U11(X1, X2)) → mark#(X1)
mark#(U71(X1, X2, X3)) → active#(U71(mark(X1), X2, X3))mark#(U21(X)) → active#(U21(mark(X)))
active#(U21(tt)) → mark#(tt)mark#(U41(X1, X2)) → active#(U41(mark(X1), X2))
active#(x(N, s(M))) → mark#(U71(isNat(M), M, N))active#(U61(tt)) → mark#(0)
active#(U72(tt, M, N)) → mark#(plus(x(N, M), N))mark#(U31(X1, X2)) → mark#(X1)
mark#(s(X)) → mark#(X)mark#(U11(X1, X2)) → active#(U11(mark(X1), X2))
active#(U32(tt)) → mark#(tt)active#(plus(N, s(M))) → mark#(U51(isNat(M), M, N))
mark#(plus(X1, X2)) → active#(plus(mark(X1), mark(X2)))mark#(U71(X1, X2, X3)) → mark#(X1)
active#(U11(tt, V2)) → mark#(U12(isNat(V2)))mark#(U52(X1, X2, X3)) → mark#(X1)
active#(isNat(0)) → mark#(tt)active#(x(N, 0)) → mark#(U61(isNat(N)))
mark#(U72(X1, X2, X3)) → mark#(X1)mark#(U12(X)) → active#(U12(mark(X)))
mark#(plus(X1, X2)) → mark#(X1)mark#(x(X1, X2)) → mark#(X2)
active#(U12(tt)) → mark#(tt)active#(U51(tt, M, N)) → mark#(U52(isNat(N), M, N))
mark#(isNat(X)) → active#(isNat(X))mark#(tt) → active#(tt)
mark#(U32(X)) → mark#(X)active#(U31(tt, V2)) → mark#(U32(isNat(V2)))
mark#(U21(X)) → mark#(X)mark#(U51(X1, X2, X3)) → mark#(X1)
mark#(U61(X)) → active#(U61(mark(X)))mark#(plus(X1, X2)) → mark#(X2)
active#(isNat(x(V1, V2))) → mark#(U31(isNat(V1), V2))mark#(U41(X1, X2)) → mark#(X1)
active#(isNat(plus(V1, V2))) → mark#(U11(isNat(V1), V2))mark#(U61(X)) → mark#(X)
mark#(U31(X1, X2)) → active#(U31(mark(X1), X2))active#(U41(tt, N)) → mark#(N)
active#(U52(tt, M, N)) → mark#(s(plus(N, M)))mark#(U12(X)) → mark#(X)
mark#(0) → active#(0)mark#(s(X)) → active#(s(mark(X)))
mark#(x(X1, X2)) → active#(x(mark(X1), mark(X2)))active#(isNat(s(V1))) → mark#(U21(isNat(V1)))
mark#(U51(X1, X2, X3)) → active#(U51(mark(X1), X2, X3))active#(U71(tt, M, N)) → mark#(U72(isNat(N), M, N))
mark#(U32(X)) → active#(U32(mark(X)))mark#(U72(X1, X2, X3)) → active#(U72(mark(X1), X2, X3))
mark#(x(X1, X2)) → mark#(X1)mark#(U52(X1, X2, X3)) → active#(U52(mark(X1), X2, X3))

U32#(active(X)) → U32#(X)U32#(mark(X)) → U32#(X)

Problem 8: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

plus#(X1, active(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)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

plus#(mark(X1), X2)plus#(X1, X2)plus#(active(X1), X2)plus#(X1, X2)

Problem 11: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U12#(active(X))U12#(X)U12#(mark(X))U12#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U12#(active(X))U12#(X)U12#(mark(X))U12#(X)

Problem 14: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U41#(X1, mark(X2))U41#(X1, X2)U41#(mark(X1), X2)U41#(X1, X2)
U41#(X1, active(X2))U41#(X1, X2)U41#(active(X1), X2)U41#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U41#(mark(X1), X2)U41#(X1, X2)U41#(active(X1), X2)U41#(X1, X2)

Problem 15: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

isNat#(active(X))isNat#(X)isNat#(mark(X))isNat#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

isNat#(active(X))isNat#(X)isNat#(mark(X))isNat#(X)

Problem 17: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U72#(active(X1), X2, X3)U72#(X1, X2, X3)U72#(X1, active(X2), X3)U72#(X1, X2, X3)
U72#(X1, X2, active(X3))U72#(X1, X2, X3)U72#(X1, X2, mark(X3))U72#(X1, X2, X3)
U72#(mark(X1), X2, X3)U72#(X1, X2, X3)U72#(X1, mark(X2), X3)U72#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U72#(active(X1), X2, X3)U72#(X1, X2, X3)U72#(mark(X1), X2, X3)U72#(X1, X2, X3)

Problem 18: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U21#(mark(X))U21#(X)U21#(active(X))U21#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U21#(mark(X))U21#(X)U21#(active(X))U21#(X)

Problem 22: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

s#(mark(X))s#(X)s#(active(X))s#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

s#(mark(X))s#(X)s#(active(X))s#(X)

Problem 24: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U71#(X1, X2, active(X3))U71#(X1, X2, X3)U71#(active(X1), X2, X3)U71#(X1, X2, X3)
U71#(mark(X1), X2, X3)U71#(X1, X2, X3)U71#(X1, active(X2), X3)U71#(X1, X2, X3)
U71#(X1, mark(X2), X3)U71#(X1, X2, X3)U71#(X1, X2, mark(X3))U71#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U71#(active(X1), X2, X3)U71#(X1, X2, X3)U71#(mark(X1), X2, X3)U71#(X1, X2, X3)

Problem 38: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U11#(X1, active(X2))U11#(X1, X2)U11#(active(X1), X2)U11#(X1, X2)
U11#(mark(X1), X2)U11#(X1, X2)U11#(X1, mark(X2))U11#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U11#(active(X1), X2)U11#(X1, X2)U11#(mark(X1), X2)U11#(X1, X2)

Problem 44: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

x#(X1, active(X2))x#(X1, X2)x#(mark(X1), X2)x#(X1, X2)
x#(X1, mark(X2))x#(X1, X2)x#(active(X1), X2)x#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

x#(mark(X1), X2)x#(X1, X2)x#(active(X1), X2)x#(X1, X2)

Problem 45: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U61#(mark(X))U61#(X)U61#(active(X))U61#(X)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U61#(mark(X))U61#(X)U61#(active(X))U61#(X)

Problem 46: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U31#(active(X1), X2)U31#(X1, X2)U31#(X1, active(X2))U31#(X1, X2)
U31#(mark(X1), X2)U31#(X1, X2)U31#(X1, mark(X2))U31#(X1, X2)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U31#(active(X1), X2)U31#(X1, X2)U31#(mark(X1), X2)U31#(X1, X2)

Problem 47: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

U51#(X1, active(X2), X3)U51#(X1, X2, X3)U51#(mark(X1), X2, X3)U51#(X1, X2, X3)
U51#(X1, mark(X2), X3)U51#(X1, X2, X3)U51#(X1, X2, active(X3))U51#(X1, X2, X3)
U51#(X1, X2, mark(X3))U51#(X1, X2, X3)U51#(active(X1), X2, X3)U51#(X1, X2, X3)

Rewrite Rules

active(U11(tt, V2))mark(U12(isNat(V2)))active(U12(tt))mark(tt)
active(U21(tt))mark(tt)active(U31(tt, V2))mark(U32(isNat(V2)))
active(U32(tt))mark(tt)active(U41(tt, N))mark(N)
active(U51(tt, M, N))mark(U52(isNat(N), M, N))active(U52(tt, M, N))mark(s(plus(N, M)))
active(U61(tt))mark(0)active(U71(tt, M, N))mark(U72(isNat(N), M, N))
active(U72(tt, M, N))mark(plus(x(N, M), N))active(isNat(0))mark(tt)
active(isNat(plus(V1, V2)))mark(U11(isNat(V1), V2))active(isNat(s(V1)))mark(U21(isNat(V1)))
active(isNat(x(V1, V2)))mark(U31(isNat(V1), V2))active(plus(N, 0))mark(U41(isNat(N), N))
active(plus(N, s(M)))mark(U51(isNat(M), M, N))active(x(N, 0))mark(U61(isNat(N)))
active(x(N, s(M)))mark(U71(isNat(M), M, N))mark(U11(X1, X2))active(U11(mark(X1), X2))
mark(tt)active(tt)mark(U12(X))active(U12(mark(X)))
mark(isNat(X))active(isNat(X))mark(U21(X))active(U21(mark(X)))
mark(U31(X1, X2))active(U31(mark(X1), X2))mark(U32(X))active(U32(mark(X)))
mark(U41(X1, X2))active(U41(mark(X1), X2))mark(U51(X1, X2, X3))active(U51(mark(X1), X2, X3))
mark(U52(X1, X2, X3))active(U52(mark(X1), X2, X3))mark(s(X))active(s(mark(X)))
mark(plus(X1, X2))active(plus(mark(X1), mark(X2)))mark(U61(X))active(U61(mark(X)))
mark(0)active(0)mark(U71(X1, X2, X3))active(U71(mark(X1), X2, X3))
mark(U72(X1, X2, X3))active(U72(mark(X1), X2, X3))mark(x(X1, X2))active(x(mark(X1), mark(X2)))
U11(mark(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)
U12(mark(X))U12(X)U12(active(X))U12(X)
isNat(mark(X))isNat(X)isNat(active(X))isNat(X)
U21(mark(X))U21(X)U21(active(X))U21(X)
U31(mark(X1), X2)U31(X1, X2)U31(X1, mark(X2))U31(X1, X2)
U31(active(X1), X2)U31(X1, X2)U31(X1, active(X2))U31(X1, X2)
U32(mark(X))U32(X)U32(active(X))U32(X)
U41(mark(X1), X2)U41(X1, X2)U41(X1, mark(X2))U41(X1, X2)
U41(active(X1), X2)U41(X1, X2)U41(X1, active(X2))U41(X1, X2)
U51(mark(X1), X2, X3)U51(X1, X2, X3)U51(X1, mark(X2), X3)U51(X1, X2, X3)
U51(X1, X2, mark(X3))U51(X1, X2, X3)U51(active(X1), X2, X3)U51(X1, X2, X3)
U51(X1, active(X2), X3)U51(X1, X2, X3)U51(X1, X2, active(X3))U51(X1, X2, X3)
U52(mark(X1), X2, X3)U52(X1, X2, X3)U52(X1, mark(X2), X3)U52(X1, X2, X3)
U52(X1, X2, mark(X3))U52(X1, X2, X3)U52(active(X1), X2, X3)U52(X1, X2, X3)
U52(X1, active(X2), X3)U52(X1, X2, X3)U52(X1, X2, active(X3))U52(X1, X2, X3)
s(mark(X))s(X)s(active(X))s(X)
plus(mark(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)
U61(mark(X))U61(X)U61(active(X))U61(X)
U71(mark(X1), X2, X3)U71(X1, X2, X3)U71(X1, mark(X2), X3)U71(X1, X2, X3)
U71(X1, X2, mark(X3))U71(X1, X2, X3)U71(active(X1), X2, X3)U71(X1, X2, X3)
U71(X1, active(X2), X3)U71(X1, X2, X3)U71(X1, X2, active(X3))U71(X1, X2, X3)
U72(mark(X1), X2, X3)U72(X1, X2, X3)U72(X1, mark(X2), X3)U72(X1, X2, X3)
U72(X1, X2, mark(X3))U72(X1, X2, X3)U72(active(X1), X2, X3)U72(X1, X2, X3)
U72(X1, active(X2), X3)U72(X1, X2, X3)U72(X1, X2, active(X3))U72(X1, X2, X3)
x(mark(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)

Original Signature

Termination of terms over the following signature is verified: plus, mark, U71, isNat, U72, U61, 0, s, U51, tt, U41, U52, U11, active, U12, U31, U32, U21, x

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

U51#(mark(X1), X2, X3)U51#(X1, X2, X3)U51#(active(X1), X2, X3)U51#(X1, X2, X3)