TIMEOUT

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

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (1135ms).
 | – Problem 2 remains open; application of the following processors failed [SubtermCriterion (1ms), DependencyGraph (4ms), PolynomialLinearRange4iUR (0ms), DependencyGraph (3ms), PolynomialOrderingProcessor (0ms), DependencyGraph (4ms), PolynomialLinearRange4 (538ms), DependencyGraph (4ms), PolynomialLinearRange4 (441ms), DependencyGraph (4ms), PolynomialLinearRange4 (374ms), DependencyGraph (2ms), PolynomialLinearRange4 (412ms), DependencyGraph (3ms), ReductionPairSAT (1117ms), DependencyGraph (2ms), SizeChangePrinciple (timeout)].
 | – Problem 3 was processed with processor PolynomialLinearRange4 (276ms).
 |    | – Problem 6 was processed with processor DependencyGraph (36ms).
 |    |    | – Problem 8 was processed with processor PolynomialLinearRange4 (193ms).
 |    |    |    | – Problem 10 was processed with processor DependencyGraph (9ms).
 |    |    |    |    | – Problem 11 was processed with processor PolynomialLinearRange4 (89ms).
 |    |    |    |    |    | – Problem 12 was processed with processor DependencyGraph (3ms).
 | – Problem 4 remains open; application of the following processors failed [SubtermCriterion (0ms), DependencyGraph (16ms), PolynomialLinearRange4iUR (0ms), DependencyGraph (3ms), PolynomialOrderingProcessor (0ms), DependencyGraph (3ms), PolynomialLinearRange4 (400ms), DependencyGraph (4ms), PolynomialLinearRange4 (378ms), DependencyGraph (4ms), PolynomialLinearRange4 (296ms), DependencyGraph (2ms), PolynomialLinearRange4 (287ms), DependencyGraph (2ms), ReductionPairSAT (1032ms), DependencyGraph (2ms)].
 | – Problem 5 was processed with processor PolynomialLinearRange4 (54ms).
 |    | – Problem 7 was processed with processor DependencyGraph (5ms).
 |    |    | – Problem 9 was processed with processor PolynomialLinearRange4 (48ms).

The following open problems remain:



Open Dependency Pair Problem 2

Dependency Pairs

U82#(tt, M, N) → U83#(isNat(N), M, N)U83#(tt, M, N) → U84#(isNatKind(N), M, N)
plus#(N, s(M)) → U81#(isNat(M), M, N)U84#(tt, M, N) → plus#(N, M)
U81#(tt, M, N) → U82#(isNatKind(M), M, N)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35




Open Dependency Pair Problem 4

Dependency Pairs

x#(N, s(M)) → U101#(isNat(M), M, N)U102#(tt, M, N) → U103#(isNat(N), M, N)
U104#(tt, M, N) → x#(N, M)U103#(tt, M, N) → U104#(isNatKind(N), M, N)
U101#(tt, M, N) → U102#(isNatKind(M), M, N)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35


Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U15#(tt, V2) → U16#(isNat(V2))U83#(tt, M, N) → isNatKind#(N)
x#(N, s(M)) → U101#(isNat(M), M, N)plus#(N, 0) → U71#(isNat(N), N)
isNatKind#(plus(V1, V2)) → U41#(isNatKind(V1), V2)isNat#(s(V1)) → isNatKind#(V1)
U13#(tt, V1, V2) → isNatKind#(V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U12#(tt, V1, V2) → isNatKind#(V2)U104#(tt, M, N) → x#(N, M)
U41#(tt, V2) → U42#(isNatKind(V2))U13#(tt, V1, V2) → U14#(isNatKind(V2), V1, V2)
U35#(tt, V2) → isNat#(V2)U103#(tt, M, N) → isNatKind#(N)
U34#(tt, V1, V2) → isNat#(V1)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
isNatKind#(s(V1)) → isNatKind#(V1)isNat#(x(V1, V2)) → isNatKind#(V1)
U61#(tt, V2) → isNatKind#(V2)U102#(tt, M, N) → isNat#(N)
U15#(tt, V2) → isNat#(V2)isNat#(plus(V1, V2)) → U11#(isNatKind(V1), V1, V2)
U11#(tt, V1, V2) → U12#(isNatKind(V1), V1, V2)U103#(tt, M, N) → U104#(isNatKind(N), M, N)
U31#(tt, V1, V2) → isNatKind#(V1)U14#(tt, V1, V2) → isNat#(V1)
U11#(tt, V1, V2) → isNatKind#(V1)U22#(tt, V1) → U23#(isNat(V1))
U81#(tt, M, N) → isNatKind#(M)U84#(tt, M, N) → T(M)
U102#(tt, M, N) → U103#(isNat(N), M, N)U101#(tt, M, N) → isNatKind#(M)
U82#(tt, M, N) → U83#(isNat(N), M, N)U32#(tt, V1, V2) → isNatKind#(V2)
x#(N, 0) → U91#(isNat(N), N)U21#(tt, V1) → isNatKind#(V1)
U33#(tt, V1, V2) → isNatKind#(V2)U91#(tt, N) → isNatKind#(N)
isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)U35#(tt, V2) → U36#(isNat(V2))
U61#(tt, V2) → U62#(isNatKind(V2))U72#(tt, N) → T(N)
plus#(N, 0) → isNat#(N)U71#(tt, N) → isNatKind#(N)
U12#(tt, V1, V2) → U13#(isNatKind(V2), V1, V2)U22#(tt, V1) → isNat#(V1)
U71#(tt, N) → U72#(isNatKind(N), N)U83#(tt, M, N) → U84#(isNatKind(N), M, N)
U21#(tt, V1) → U22#(isNatKind(V1), V1)plus#(N, s(M)) → U81#(isNat(M), M, N)
U84#(tt, M, N) → plus#(N, M)plus#(N, s(M)) → isNat#(M)
U81#(tt, M, N) → U82#(isNatKind(M), M, N)U14#(tt, V1, V2) → U15#(isNat(V1), V2)
U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)isNatKind#(s(V1)) → U51#(isNatKind(V1))
isNatKind#(x(V1, V2)) → isNatKind#(V1)U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)
x#(N, 0) → isNat#(N)isNatKind#(plus(V1, V2)) → isNatKind#(V1)
U82#(tt, M, N) → isNat#(N)U104#(tt, M, N) → T(M)
U91#(tt, N) → U92#(isNatKind(N))U41#(tt, V2) → isNatKind#(V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)isNat#(plus(V1, V2)) → isNatKind#(V1)
x#(N, s(M)) → isNat#(M)U104#(tt, M, N) → T(N)
U34#(tt, V1, V2) → U35#(isNat(V1), V2)U84#(tt, M, N) → T(N)
U104#(tt, M, N) → plus#(x(N, M), N)U101#(tt, M, N) → U102#(isNatKind(M), M, N)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U41, U92, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U16, U82, U81, U11, U12, U31, U13, U32, U102, U33, U103, U34, U35, U101, x

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U84#) = μ(U33#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(U51) = μ(U14) = μ(s) = μ(U15) = μ(U16) = μ(U82) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U83#) = μ(U102) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


The following SCCs where found

U82#(tt, M, N) → U83#(isNat(N), M, N)U83#(tt, M, N) → U84#(isNatKind(N), M, N)
plus#(N, s(M)) → U81#(isNat(M), M, N)U84#(tt, M, N) → plus#(N, M)
U81#(tt, M, N) → U82#(isNatKind(M), M, N)

isNatKind#(s(V1)) → isNatKind#(V1)isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)isNatKind#(plus(V1, V2)) → U41#(isNatKind(V1), V2)
U61#(tt, V2) → isNatKind#(V2)isNatKind#(x(V1, V2)) → isNatKind#(V1)
U41#(tt, V2) → isNatKind#(V2)

U12#(tt, V1, V2) → U13#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U21#(tt, V1) → U22#(isNatKind(V1), V1)
U13#(tt, V1, V2) → U14#(isNatKind(V2), V1, V2)U35#(tt, V2) → isNat#(V2)
U34#(tt, V1, V2) → isNat#(V1)U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)
isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)U14#(tt, V1, V2) → U15#(isNat(V1), V2)
U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)U15#(tt, V2) → isNat#(V2)
isNat#(plus(V1, V2)) → U11#(isNatKind(V1), V1, V2)U11#(tt, V1, V2) → U12#(isNatKind(V1), V1, V2)
U34#(tt, V1, V2) → U35#(isNat(V1), V2)U14#(tt, V1, V2) → isNat#(V1)
U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

x#(N, s(M)) → U101#(isNat(M), M, N)U102#(tt, M, N) → U103#(isNat(N), M, N)
U104#(tt, M, N) → x#(N, M)U103#(tt, M, N) → U104#(isNatKind(N), M, N)
U101#(tt, M, N) → U102#(isNatKind(M), M, N)

Problem 3: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U12#(tt, V1, V2) → U13#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U35#(tt, V2) → isNat#(V2)
U13#(tt, V1, V2) → U14#(isNatKind(V2), V1, V2)U21#(tt, V1) → U22#(isNatKind(V1), V1)
U34#(tt, V1, V2) → isNat#(V1)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)U14#(tt, V1, V2) → U15#(isNat(V1), V2)
U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)isNat#(plus(V1, V2)) → U11#(isNatKind(V1), V1, V2)
U15#(tt, V2) → isNat#(V2)U11#(tt, V1, V2) → U12#(isNatKind(V1), V1, V2)
U34#(tt, V1, V2) → U35#(isNat(V1), V2)U14#(tt, V1, V2) → isNat#(V1)
U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U41, U92, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U16, U82, U81, U11, U12, U31, U13, U32, U102, U33, U103, U34, U35, U101, x

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U33#) = μ(U84#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(s) = μ(U14) = μ(U51) = μ(U15) = μ(U82) = μ(U16) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U102) = μ(U83#) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


Polynomial Interpretation

Standard Usable rules

U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
U15(tt, V2) → U16(isNat(V2))isNat(s(V1)) → U21(isNatKind(V1), V1)
U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U62(tt) → ttisNatKind(0) → tt
U36(tt) → ttisNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
isNat(0) → ttU13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)
U23(tt) → ttU34(tt, V1, V2) → U35(isNat(V1), V2)
U14(tt, V1, V2) → U15(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U41(tt, V2) → U42(isNatKind(V2))U42(tt) → tt
U51(tt) → ttU16(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))isNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
U22(tt, V1) → U23(isNat(V1))U21(tt, V1) → U22(isNatKind(V1), V1)

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

U13#(tt, V1, V2) → U14#(isNatKind(V2), V1, V2)

Problem 6: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U12#(tt, V1, V2) → U13#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U35#(tt, V2) → isNat#(V2)
U21#(tt, V1) → U22#(isNatKind(V1), V1)U34#(tt, V1, V2) → isNat#(V1)
isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)
U14#(tt, V1, V2) → U15#(isNat(V1), V2)U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)
isNat#(plus(V1, V2)) → U11#(isNatKind(V1), V1, V2)U15#(tt, V2) → isNat#(V2)
U11#(tt, V1, V2) → U12#(isNatKind(V1), V1, V2)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U14#(tt, V1, V2) → isNat#(V1)U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U84#) = μ(U33#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(U51) = μ(U14) = μ(s) = μ(U15) = μ(U16) = μ(U82) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U83#) = μ(U102) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


The following SCCs where found

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U21#(tt, V1) → U22#(isNatKind(V1), V1)U35#(tt, V2) → isNat#(V2)
U34#(tt, V1, V2) → isNat#(V1)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

Problem 8: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U21#(tt, V1) → U22#(isNatKind(V1), V1)U35#(tt, V2) → isNat#(V2)
U34#(tt, V1, V2) → isNat#(V1)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U33#) = μ(U84#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(s) = μ(U14) = μ(U51) = μ(U15) = μ(U82) = μ(U16) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U102) = μ(U83#) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


Polynomial Interpretation

Standard Usable rules

U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
U15(tt, V2) → U16(isNat(V2))isNat(s(V1)) → U21(isNatKind(V1), V1)
U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U62(tt) → ttisNatKind(0) → tt
U36(tt) → ttisNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
isNat(0) → ttU13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)
U23(tt) → ttU34(tt, V1, V2) → U35(isNat(V1), V2)
U14(tt, V1, V2) → U15(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U41(tt, V2) → U42(isNatKind(V2))U42(tt) → tt
U51(tt) → ttU16(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))isNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
U22(tt, V1) → U23(isNat(V1))U21(tt, V1) → U22(isNatKind(V1), V1)

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

U21#(tt, V1) → U22#(isNatKind(V1), V1)

Problem 10: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)isNat#(s(V1)) → U21#(isNatKind(V1), V1)
U22#(tt, V1) → isNat#(V1)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U35#(tt, V2) → isNat#(V2)U34#(tt, V1, V2) → isNat#(V1)
U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)
isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U41, U92, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U16, U82, U81, U11, U12, U31, U13, U32, U102, U33, U103, U34, U35, U101, x

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U84#) = μ(U33#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(U51) = μ(U14) = μ(s) = μ(U15) = μ(U16) = μ(U82) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U83#) = μ(U102) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


The following SCCs where found

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U35#(tt, V2) → isNat#(V2)U34#(tt, V1, V2) → isNat#(V1)
U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)

Problem 11: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U35#(tt, V2) → isNat#(V2)U34#(tt, V1, V2) → isNat#(V1)
U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U41, U92, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U16, U82, U81, U11, U12, U31, U13, U32, U102, U33, U103, U34, U35, U101, x

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U33#) = μ(U84#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(s) = μ(U14) = μ(U51) = μ(U15) = μ(U82) = μ(U16) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U102) = μ(U83#) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


Polynomial Interpretation

Standard Usable rules

U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
U15(tt, V2) → U16(isNat(V2))isNat(s(V1)) → U21(isNatKind(V1), V1)
U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U62(tt) → ttisNatKind(0) → tt
U36(tt) → ttisNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
isNat(0) → ttU13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)
U23(tt) → ttU34(tt, V1, V2) → U35(isNat(V1), V2)
U14(tt, V1, V2) → U15(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U41(tt, V2) → U42(isNatKind(V2))U42(tt) → tt
U51(tt) → ttU16(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))isNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
U22(tt, V1) → U23(isNat(V1))U21(tt, V1) → U22(isNatKind(V1), V1)

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

isNat#(x(V1, V2)) → U31#(isNatKind(V1), V1, V2)

Problem 12: DependencyGraph



Dependency Pair Problem

Dependency Pairs

U32#(tt, V1, V2) → U33#(isNatKind(V2), V1, V2)U34#(tt, V1, V2) → U35#(isNat(V1), V2)
U35#(tt, V2) → isNat#(V2)U34#(tt, V1, V2) → isNat#(V1)
U31#(tt, V1, V2) → U32#(isNatKind(V1), V1, V2)U33#(tt, V1, V2) → U34#(isNatKind(V2), V1, V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U84#) = μ(U33#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(U51) = μ(U14) = μ(s) = μ(U15) = μ(U16) = μ(U82) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U83#) = μ(U102) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


There are no SCCs!

Problem 5: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

isNatKind#(s(V1)) → isNatKind#(V1)isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)isNatKind#(plus(V1, V2)) → U41#(isNatKind(V1), V2)
U61#(tt, V2) → isNatKind#(V2)isNatKind#(x(V1, V2)) → isNatKind#(V1)
U41#(tt, V2) → isNatKind#(V2)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U41, U92, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U16, U82, U81, U11, U12, U31, U13, U32, U102, U33, U103, U34, U35, U101, x

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U33#) = μ(U84#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(s) = μ(U14) = μ(U51) = μ(U15) = μ(U82) = μ(U16) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U102) = μ(U83#) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


Polynomial Interpretation

Standard Usable rules

U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))isNatKind(s(V1)) → U51(isNatKind(V1))
U62(tt) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
U41(tt, V2) → U42(isNatKind(V2))isNatKind(0) → tt
isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

U41#(tt, V2) → isNatKind#(V2)

Problem 7: DependencyGraph



Dependency Pair Problem

Dependency Pairs

isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)isNatKind#(s(V1)) → isNatKind#(V1)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)isNatKind#(plus(V1, V2)) → U41#(isNatKind(V1), V2)
U61#(tt, V2) → isNatKind#(V2)isNatKind#(x(V1, V2)) → isNatKind#(V1)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U84#) = μ(U33#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(U51) = μ(U14) = μ(s) = μ(U15) = μ(U16) = μ(U82) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U83#) = μ(U102) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


The following SCCs where found

isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)isNatKind#(s(V1)) → isNatKind#(V1)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)U61#(tt, V2) → isNatKind#(V2)
isNatKind#(x(V1, V2)) → isNatKind#(V1)

Problem 9: PolynomialLinearRange4



Dependency Pair Problem

Dependency Pairs

isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)isNatKind#(s(V1)) → isNatKind#(V1)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)U61#(tt, V2) → isNatKind#(V2)
isNatKind#(x(V1, V2)) → isNatKind#(V1)

Rewrite Rules

U101(tt, M, N) → U102(isNatKind(M), M, N)U102(tt, M, N) → U103(isNat(N), M, N)
U103(tt, M, N) → U104(isNatKind(N), M, N)U104(tt, M, N) → plus(x(N, M), N)
U11(tt, V1, V2) → U12(isNatKind(V1), V1, V2)U12(tt, V1, V2) → U13(isNatKind(V2), V1, V2)
U13(tt, V1, V2) → U14(isNatKind(V2), V1, V2)U14(tt, V1, V2) → U15(isNat(V1), V2)
U15(tt, V2) → U16(isNat(V2))U16(tt) → tt
U21(tt, V1) → U22(isNatKind(V1), V1)U22(tt, V1) → U23(isNat(V1))
U23(tt) → ttU31(tt, V1, V2) → U32(isNatKind(V1), V1, V2)
U32(tt, V1, V2) → U33(isNatKind(V2), V1, V2)U33(tt, V1, V2) → U34(isNatKind(V2), V1, V2)
U34(tt, V1, V2) → U35(isNat(V1), V2)U35(tt, V2) → U36(isNat(V2))
U36(tt) → ttU41(tt, V2) → U42(isNatKind(V2))
U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))U62(tt) → tt
U71(tt, N) → U72(isNatKind(N), N)U72(tt, N) → N
U81(tt, M, N) → U82(isNatKind(M), M, N)U82(tt, M, N) → U83(isNat(N), M, N)
U83(tt, M, N) → U84(isNatKind(N), M, N)U84(tt, M, N) → s(plus(N, M))
U91(tt, N) → U92(isNatKind(N))U92(tt) → 0
isNat(0) → ttisNat(plus(V1, V2)) → U11(isNatKind(V1), V1, V2)
isNat(s(V1)) → U21(isNatKind(V1), V1)isNat(x(V1, V2)) → U31(isNatKind(V1), V1, V2)
isNatKind(0) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
isNatKind(s(V1)) → U51(isNatKind(V1))isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)
plus(N, 0) → U71(isNat(N), N)plus(N, s(M)) → U81(isNat(M), M, N)
x(N, 0) → U91(isNat(N), N)x(N, s(M)) → U101(isNat(M), M, N)

Original Signature

Termination of terms over the following signature is verified: U104, isNat, U62, U61, U42, U92, U41, U91, U23, U21, U22, plus, isNatKind, U83, U84, U71, U36, U72, 0, s, U51, U14, tt, U15, U82, U16, U81, U11, U12, U13, U31, U102, U32, U103, U33, U34, x, U101, U35

Strategy

Context-sensitive strategy:
μ(isNatKind) = μ(0) = μ(isNatKind#) = μ(isNat) = μ(T) = μ(tt) = μ(isNat#) = ∅
μ(U11#) = μ(U31#) = μ(U21#) = μ(U62#) = μ(U104) = μ(U104#) = μ(U35#) = μ(U41#) = μ(U62) = μ(U61) = μ(U72#) = μ(U16#) = μ(U23) = μ(U21) = μ(U22) = μ(U12#) = μ(U22#) = μ(U61#) = μ(U103#) = μ(U51#) = μ(U71) = μ(U36) = μ(U42#) = μ(U72) = μ(U71#) = μ(U36#) = μ(U32#) = μ(U15#) = μ(U31) = μ(U32) = μ(U33) = μ(U34) = μ(U35) = μ(U13#) = μ(U91#) = μ(U102#) = μ(U81#) = μ(U23#) = μ(U42) = μ(U92) = μ(U41) = μ(U91) = μ(U33#) = μ(U84#) = μ(U14#) = μ(U101#) = μ(U92#) = μ(U83) = μ(U84) = μ(U82#) = μ(s) = μ(U14) = μ(U51) = μ(U15) = μ(U82) = μ(U16) = μ(U81) = μ(U11) = μ(U12) = μ(U13) = μ(U102) = μ(U83#) = μ(U103) = μ(U34#) = μ(U101) = {1}
μ(plus) = μ(x#) = μ(plus#) = μ(x) = {1, 2}


Polynomial Interpretation

Standard Usable rules

U42(tt) → ttU51(tt) → tt
U61(tt, V2) → U62(isNatKind(V2))isNatKind(s(V1)) → U51(isNatKind(V1))
U62(tt) → ttisNatKind(plus(V1, V2)) → U41(isNatKind(V1), V2)
U41(tt, V2) → U42(isNatKind(V2))isNatKind(0) → tt
isNatKind(x(V1, V2)) → U61(isNatKind(V1), V2)

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

isNatKind#(s(V1)) → isNatKind#(V1)isNatKind#(x(V1, V2)) → U61#(isNatKind(V1), V2)
isNatKind#(plus(V1, V2)) → isNatKind#(V1)U61#(tt, V2) → isNatKind#(V2)
isNatKind#(x(V1, V2)) → isNatKind#(V1)