5.31/2.02 YES 5.31/2.03 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 5.31/2.03 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 5.31/2.03 5.31/2.03 5.31/2.03 Termination of the given CSR could be proven: 5.31/2.03 5.31/2.03 (0) CSR 5.31/2.03 (1) CSDependencyPairsProof [EQUIVALENT, 77 ms] 5.31/2.03 (2) QCSDP 5.31/2.03 (3) QCSDependencyGraphProof [EQUIVALENT, 0 ms] 5.31/2.03 (4) AND 5.31/2.03 (5) QCSDP 5.31/2.03 (6) QCSDPSubtermProof [EQUIVALENT, 26 ms] 5.31/2.03 (7) QCSDP 5.31/2.03 (8) QCSDependencyGraphProof [EQUIVALENT, 0 ms] 5.31/2.03 (9) TRUE 5.31/2.03 (10) QCSDP 5.31/2.03 (11) QCSUsableRulesProof [EQUIVALENT, 0 ms] 5.31/2.03 (12) QCSDP 5.31/2.03 (13) QCSDPMuMonotonicPoloProof [EQUIVALENT, 62 ms] 5.31/2.03 (14) QCSDP 5.31/2.03 (15) QCSDependencyGraphProof [EQUIVALENT, 0 ms] 5.31/2.03 (16) TRUE 5.31/2.03 (17) QCSDP 5.31/2.03 (18) QCSDPSubtermProof [EQUIVALENT, 0 ms] 5.31/2.03 (19) QCSDP 5.31/2.03 (20) QCSDependencyGraphProof [EQUIVALENT, 0 ms] 5.31/2.03 (21) TRUE 5.31/2.03 (22) QCSDP 5.31/2.03 (23) QCSDPSubtermProof [EQUIVALENT, 0 ms] 5.31/2.03 (24) QCSDP 5.31/2.03 (25) QCSDependencyGraphProof [EQUIVALENT, 0 ms] 5.31/2.03 (26) TRUE 5.31/2.03 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (0) 5.31/2.03 Obligation: 5.31/2.03 Context-sensitive rewrite system: 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 The replacement map contains the following entries: 5.31/2.03 5.31/2.03 U101: {1} 5.31/2.03 tt: empty set 5.31/2.03 U102: {1} 5.31/2.03 isNatKind: empty set 5.31/2.03 U103: {1} 5.31/2.03 isNat: empty set 5.31/2.03 U104: {1} 5.31/2.03 plus: {1, 2} 5.31/2.03 x: {1, 2} 5.31/2.03 U11: {1} 5.31/2.03 U12: {1} 5.31/2.03 U13: {1} 5.31/2.03 U14: {1} 5.31/2.03 U15: {1} 5.31/2.03 U16: {1} 5.31/2.03 U21: {1} 5.31/2.03 U22: {1} 5.31/2.03 U23: {1} 5.31/2.03 U31: {1} 5.31/2.03 U32: {1} 5.31/2.03 U33: {1} 5.31/2.03 U34: {1} 5.31/2.03 U35: {1} 5.31/2.03 U36: {1} 5.31/2.03 U41: {1} 5.31/2.03 U42: {1} 5.31/2.03 U51: {1} 5.31/2.03 U61: {1} 5.31/2.03 U62: {1} 5.31/2.03 U71: {1} 5.31/2.03 U72: {1} 5.31/2.03 U81: {1} 5.31/2.03 U82: {1} 5.31/2.03 U83: {1} 5.31/2.03 U84: {1} 5.31/2.03 s: {1} 5.31/2.03 U91: {1} 5.31/2.03 U92: {1} 5.31/2.03 0: empty set 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (1) CSDependencyPairsProof (EQUIVALENT) 5.31/2.03 Using Improved CS-DPs [LPAR08] we result in the following initial Q-CSDP problem. 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (2) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1, PLUS_2, X_2, U16'_1, U23'_1, U36'_1, U42'_1, U62'_1, U92'_1, U51'_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U102'_3, U101'_3, U103'_3, U104'_3, U12'_3, U11'_3, U13'_3, U14'_3, U15'_2, U22'_2, U21'_2, U32'_3, U31'_3, U33'_3, U34'_3, U35'_2, U41'_2, U61'_2, U72'_2, U71'_2, U82'_3, U81'_3, U83'_3, U84'_3, U91'_2} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1, ISNATKIND_1, ISNAT_1, U_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The ordinary context-sensitive dependency pairs DP_o are: 5.31/2.03 U101'(tt, M, N) -> U102'(isNatKind(M), M, N) 5.31/2.03 U101'(tt, M, N) -> ISNATKIND(M) 5.31/2.03 U102'(tt, M, N) -> U103'(isNat(N), M, N) 5.31/2.03 U102'(tt, M, N) -> ISNAT(N) 5.31/2.03 U103'(tt, M, N) -> U104'(isNatKind(N), M, N) 5.31/2.03 U103'(tt, M, N) -> ISNATKIND(N) 5.31/2.03 U104'(tt, M, N) -> PLUS(x(N, M), N) 5.31/2.03 U104'(tt, M, N) -> X(N, M) 5.31/2.03 U11'(tt, V1, V2) -> U12'(isNatKind(V1), V1, V2) 5.31/2.03 U11'(tt, V1, V2) -> ISNATKIND(V1) 5.31/2.03 U12'(tt, V1, V2) -> U13'(isNatKind(V2), V1, V2) 5.31/2.03 U12'(tt, V1, V2) -> ISNATKIND(V2) 5.31/2.03 U13'(tt, V1, V2) -> U14'(isNatKind(V2), V1, V2) 5.31/2.03 U13'(tt, V1, V2) -> ISNATKIND(V2) 5.31/2.03 U14'(tt, V1, V2) -> U15'(isNat(V1), V2) 5.31/2.03 U14'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 U15'(tt, V2) -> U16'(isNat(V2)) 5.31/2.03 U15'(tt, V2) -> ISNAT(V2) 5.31/2.03 U21'(tt, V1) -> U22'(isNatKind(V1), V1) 5.31/2.03 U21'(tt, V1) -> ISNATKIND(V1) 5.31/2.03 U22'(tt, V1) -> U23'(isNat(V1)) 5.31/2.03 U22'(tt, V1) -> ISNAT(V1) 5.31/2.03 U31'(tt, V1, V2) -> U32'(isNatKind(V1), V1, V2) 5.31/2.03 U31'(tt, V1, V2) -> ISNATKIND(V1) 5.31/2.03 U32'(tt, V1, V2) -> U33'(isNatKind(V2), V1, V2) 5.31/2.03 U32'(tt, V1, V2) -> ISNATKIND(V2) 5.31/2.03 U33'(tt, V1, V2) -> U34'(isNatKind(V2), V1, V2) 5.31/2.03 U33'(tt, V1, V2) -> ISNATKIND(V2) 5.31/2.03 U34'(tt, V1, V2) -> U35'(isNat(V1), V2) 5.31/2.03 U34'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 U35'(tt, V2) -> U36'(isNat(V2)) 5.31/2.03 U35'(tt, V2) -> ISNAT(V2) 5.31/2.03 U41'(tt, V2) -> U42'(isNatKind(V2)) 5.31/2.03 U41'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 U61'(tt, V2) -> U62'(isNatKind(V2)) 5.31/2.03 U61'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 U71'(tt, N) -> U72'(isNatKind(N), N) 5.31/2.03 U71'(tt, N) -> ISNATKIND(N) 5.31/2.03 U81'(tt, M, N) -> U82'(isNatKind(M), M, N) 5.31/2.03 U81'(tt, M, N) -> ISNATKIND(M) 5.31/2.03 U82'(tt, M, N) -> U83'(isNat(N), M, N) 5.31/2.03 U82'(tt, M, N) -> ISNAT(N) 5.31/2.03 U83'(tt, M, N) -> U84'(isNatKind(N), M, N) 5.31/2.03 U83'(tt, M, N) -> ISNATKIND(N) 5.31/2.03 U84'(tt, M, N) -> PLUS(N, M) 5.31/2.03 U91'(tt, N) -> U92'(isNatKind(N)) 5.31/2.03 U91'(tt, N) -> ISNATKIND(N) 5.31/2.03 ISNAT(plus(V1, V2)) -> U11'(isNatKind(V1), V1, V2) 5.31/2.03 ISNAT(plus(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 ISNAT(s(V1)) -> U21'(isNatKind(V1), V1) 5.31/2.03 ISNAT(s(V1)) -> ISNATKIND(V1) 5.31/2.03 ISNAT(x(V1, V2)) -> U31'(isNatKind(V1), V1, V2) 5.31/2.03 ISNAT(x(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(plus(V1, V2)) -> U41'(isNatKind(V1), V2) 5.31/2.03 ISNATKIND(plus(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(s(V1)) -> U51'(isNatKind(V1)) 5.31/2.03 ISNATKIND(s(V1)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(x(V1, V2)) -> U61'(isNatKind(V1), V2) 5.31/2.03 ISNATKIND(x(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 PLUS(N, 0) -> U71'(isNat(N), N) 5.31/2.03 PLUS(N, 0) -> ISNAT(N) 5.31/2.03 PLUS(N, s(M)) -> U81'(isNat(M), M, N) 5.31/2.03 PLUS(N, s(M)) -> ISNAT(M) 5.31/2.03 X(N, 0) -> U91'(isNat(N), N) 5.31/2.03 X(N, 0) -> ISNAT(N) 5.31/2.03 X(N, s(M)) -> U101'(isNat(M), M, N) 5.31/2.03 X(N, s(M)) -> ISNAT(M) 5.31/2.03 5.31/2.03 The collapsing dependency pairs are DP_c: 5.31/2.03 U104'(tt, M, N) -> N 5.31/2.03 U104'(tt, M, N) -> M 5.31/2.03 U72'(tt, N) -> N 5.31/2.03 U84'(tt, M, N) -> N 5.31/2.03 U84'(tt, M, N) -> M 5.31/2.03 5.31/2.03 5.31/2.03 The hidden terms of R are: 5.31/2.03 none 5.31/2.03 5.31/2.03 Every hiding context is built from:none 5.31/2.03 5.31/2.03 Hence, the new unhiding pairs DP_u are : 5.31/2.03 U104'(tt, M, N) -> U(N) 5.31/2.03 U104'(tt, M, N) -> U(M) 5.31/2.03 U72'(tt, N) -> U(N) 5.31/2.03 U84'(tt, M, N) -> U(N) 5.31/2.03 U84'(tt, M, N) -> U(M) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (3) QCSDependencyGraphProof (EQUIVALENT) 5.31/2.03 The approximation of the Context-Sensitive Dependency Graph [LPAR08] contains 4 SCCs with 38 less nodes. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (4) 5.31/2.03 Complex Obligation (AND) 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (5) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U41'_2, U61'_2} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1, ISNATKIND_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U41'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 ISNATKIND(plus(V1, V2)) -> U41'(isNatKind(V1), V2) 5.31/2.03 ISNATKIND(plus(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(s(V1)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(x(V1, V2)) -> U61'(isNatKind(V1), V2) 5.31/2.03 U61'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 ISNATKIND(x(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (6) QCSDPSubtermProof (EQUIVALENT) 5.31/2.03 We use the subterm processor [DA_EMMES]. 5.31/2.03 5.31/2.03 5.31/2.03 The following pairs can be oriented strictly and are deleted. 5.31/2.03 5.31/2.03 ISNATKIND(plus(V1, V2)) -> U41'(isNatKind(V1), V2) 5.31/2.03 ISNATKIND(plus(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(s(V1)) -> ISNATKIND(V1) 5.31/2.03 ISNATKIND(x(V1, V2)) -> U61'(isNatKind(V1), V2) 5.31/2.03 ISNATKIND(x(V1, V2)) -> ISNATKIND(V1) 5.31/2.03 The remaining pairs can at least be oriented weakly. 5.31/2.03 5.31/2.03 U41'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 U61'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 Used ordering: Combined order from the following AFS and order. 5.31/2.03 ISNATKIND(x1) = x1 5.31/2.03 5.31/2.03 U41'(x1, x2) = x2 5.31/2.03 5.31/2.03 U61'(x1, x2) = x2 5.31/2.03 5.31/2.03 5.31/2.03 Subterm Order 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (7) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U41'_2, U61'_2} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1, ISNATKIND_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U41'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 U61'(tt, V2) -> ISNATKIND(V2) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (8) QCSDependencyGraphProof (EQUIVALENT) 5.31/2.03 The approximation of the Context-Sensitive Dependency Graph [LPAR08] contains 0 SCCs with 2 less nodes. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (9) 5.31/2.03 TRUE 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (10) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U12'_3, U11'_3, U13'_3, U14'_3, U15'_2, U21'_2, U22'_2, U31'_3, U32'_3, U33'_3, U34'_3, U35'_2} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1, ISNAT_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U11'(tt, V1, V2) -> U12'(isNatKind(V1), V1, V2) 5.31/2.03 U12'(tt, V1, V2) -> U13'(isNatKind(V2), V1, V2) 5.31/2.03 U13'(tt, V1, V2) -> U14'(isNatKind(V2), V1, V2) 5.31/2.03 U14'(tt, V1, V2) -> U15'(isNat(V1), V2) 5.31/2.03 U15'(tt, V2) -> ISNAT(V2) 5.31/2.03 ISNAT(plus(V1, V2)) -> U11'(isNatKind(V1), V1, V2) 5.31/2.03 ISNAT(s(V1)) -> U21'(isNatKind(V1), V1) 5.31/2.03 U21'(tt, V1) -> U22'(isNatKind(V1), V1) 5.31/2.03 U22'(tt, V1) -> ISNAT(V1) 5.31/2.03 ISNAT(x(V1, V2)) -> U31'(isNatKind(V1), V1, V2) 5.31/2.03 U31'(tt, V1, V2) -> U32'(isNatKind(V1), V1, V2) 5.31/2.03 U32'(tt, V1, V2) -> U33'(isNatKind(V2), V1, V2) 5.31/2.03 U33'(tt, V1, V2) -> U34'(isNatKind(V2), V1, V2) 5.31/2.03 U34'(tt, V1, V2) -> U35'(isNat(V1), V2) 5.31/2.03 U35'(tt, V2) -> ISNAT(V2) 5.31/2.03 U34'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 U14'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (11) QCSUsableRulesProof (EQUIVALENT) 5.31/2.03 The following rules are not useable [DA_EMMES] and can be deleted: 5.31/2.03 5.31/2.03 U101(tt, x0, x1) -> U102(isNatKind(x0), x0, x1) 5.31/2.03 U102(tt, x0, x1) -> U103(isNat(x1), x0, x1) 5.31/2.03 U103(tt, x0, x1) -> U104(isNatKind(x1), x0, x1) 5.31/2.03 U104(tt, x0, x1) -> plus(x(x1, x0), x1) 5.31/2.03 U71(tt, x0) -> U72(isNatKind(x0), x0) 5.31/2.03 U72(tt, x0) -> x0 5.31/2.03 U81(tt, x0, x1) -> U82(isNatKind(x0), x0, x1) 5.31/2.03 U82(tt, x0, x1) -> U83(isNat(x1), x0, x1) 5.31/2.03 U83(tt, x0, x1) -> U84(isNatKind(x1), x0, x1) 5.31/2.03 U84(tt, x0, x1) -> s(plus(x1, x0)) 5.31/2.03 U91(tt, x0) -> U92(isNatKind(x0)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 plus(x0, 0) -> U71(isNat(x0), x0) 5.31/2.03 plus(x0, s(x1)) -> U81(isNat(x1), x1, x0) 5.31/2.03 x(x0, 0) -> U91(isNat(x0), x0) 5.31/2.03 x(x0, s(x1)) -> U101(isNat(x1), x1, x0) 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (12) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, s_1, U51_1, x_2, U62_1, U42_1, U23_1, U36_1, U16_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U41_2, U61_2, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U12'_3, U11'_3, U13'_3, U14'_3, U15'_2, U21'_2, U22'_2, U31'_3, U32'_3, U33'_3, U34'_3, U35'_2} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1, ISNAT_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U11'(tt, V1, V2) -> U12'(isNatKind(V1), V1, V2) 5.31/2.03 U12'(tt, V1, V2) -> U13'(isNatKind(V2), V1, V2) 5.31/2.03 U13'(tt, V1, V2) -> U14'(isNatKind(V2), V1, V2) 5.31/2.03 U14'(tt, V1, V2) -> U15'(isNat(V1), V2) 5.31/2.03 U15'(tt, V2) -> ISNAT(V2) 5.31/2.03 ISNAT(plus(V1, V2)) -> U11'(isNatKind(V1), V1, V2) 5.31/2.03 ISNAT(s(V1)) -> U21'(isNatKind(V1), V1) 5.31/2.03 U21'(tt, V1) -> U22'(isNatKind(V1), V1) 5.31/2.03 U22'(tt, V1) -> ISNAT(V1) 5.31/2.03 ISNAT(x(V1, V2)) -> U31'(isNatKind(V1), V1, V2) 5.31/2.03 U31'(tt, V1, V2) -> U32'(isNatKind(V1), V1, V2) 5.31/2.03 U32'(tt, V1, V2) -> U33'(isNatKind(V2), V1, V2) 5.31/2.03 U33'(tt, V1, V2) -> U34'(isNatKind(V2), V1, V2) 5.31/2.03 U34'(tt, V1, V2) -> U35'(isNat(V1), V2) 5.31/2.03 U35'(tt, V2) -> ISNAT(V2) 5.31/2.03 U34'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 U14'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U23(tt) -> tt 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (13) QCSDPMuMonotonicPoloProof (EQUIVALENT) 5.31/2.03 By using the following mu-monotonic polynomial ordering [POLO], at least one Dependency Pair or term rewrite system rule of this Q-CSDP problem can be strictly oriented and thus deleted. 5.31/2.03 5.31/2.03 Strictly oriented dependency pairs: 5.31/2.03 5.31/2.03 U14'(tt, V1, V2) -> U15'(isNat(V1), V2) 5.31/2.03 U15'(tt, V2) -> ISNAT(V2) 5.31/2.03 ISNAT(plus(V1, V2)) -> U11'(isNatKind(V1), V1, V2) 5.31/2.03 ISNAT(s(V1)) -> U21'(isNatKind(V1), V1) 5.31/2.03 U21'(tt, V1) -> U22'(isNatKind(V1), V1) 5.31/2.03 U22'(tt, V1) -> ISNAT(V1) 5.31/2.03 ISNAT(x(V1, V2)) -> U31'(isNatKind(V1), V1, V2) 5.31/2.03 U34'(tt, V1, V2) -> U35'(isNat(V1), V2) 5.31/2.03 U35'(tt, V2) -> ISNAT(V2) 5.31/2.03 U34'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 U14'(tt, V1, V2) -> ISNAT(V1) 5.31/2.03 5.31/2.03 Strictly oriented rules of the TRS R: 5.31/2.03 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 5.31/2.03 Used ordering: POLO with Polynomial interpretation [POLO]: 5.31/2.03 5.31/2.03 POL(0) = 2 5.31/2.03 POL(ISNAT(x_1)) = 2 + 2*x_1 5.31/2.03 POL(U11(x_1, x_2, x_3)) = x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U11'(x_1, x_2, x_3)) = 1 + 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U12(x_1, x_2, x_3)) = x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U12'(x_1, x_2, x_3)) = 1 + 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U13(x_1, x_2, x_3)) = x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U13'(x_1, x_2, x_3)) = 1 + 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U14(x_1, x_2, x_3)) = x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U14'(x_1, x_2, x_3)) = 1 + 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U15(x_1, x_2)) = x_1 + 2*x_2 5.31/2.03 POL(U15'(x_1, x_2)) = 1 + x_1 + 2*x_2 5.31/2.03 POL(U16(x_1)) = 2*x_1 5.31/2.03 POL(U21(x_1, x_2)) = x_1 + 2*x_2 5.31/2.03 POL(U21'(x_1, x_2)) = 2*x_1 + 2*x_2 5.31/2.03 POL(U22(x_1, x_2)) = x_1 + 2*x_2 5.31/2.03 POL(U22'(x_1, x_2)) = 1 + x_1 + 2*x_2 5.31/2.03 POL(U23(x_1)) = 1 + 2*x_1 5.31/2.03 POL(U31(x_1, x_2, x_3)) = x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U31'(x_1, x_2, x_3)) = 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U32(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 5.31/2.03 POL(U32'(x_1, x_2, x_3)) = 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U33(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 5.31/2.03 POL(U33'(x_1, x_2, x_3)) = 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U34(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 5.31/2.03 POL(U34'(x_1, x_2, x_3)) = 2*x_1 + 2*x_2 + 2*x_3 5.31/2.03 POL(U35(x_1, x_2)) = 1 + 2*x_1 + x_2 5.31/2.03 POL(U35'(x_1, x_2)) = 2*x_1 + 2*x_2 5.31/2.03 POL(U36(x_1)) = x_1 5.31/2.03 POL(U41(x_1, x_2)) = x_1 5.31/2.03 POL(U42(x_1)) = x_1 5.31/2.03 POL(U51(x_1)) = x_1 5.31/2.03 POL(U61(x_1, x_2)) = x_1 5.31/2.03 POL(U62(x_1)) = x_1 5.31/2.03 POL(isNat(x_1)) = x_1 5.31/2.03 POL(isNatKind(x_1)) = 2 5.31/2.03 POL(plus(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 5.31/2.03 POL(s(x_1)) = 2 + 2*x_1 5.31/2.03 POL(tt) = 2 5.31/2.03 POL(x(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 5.31/2.03 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (14) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, s_1, U51_1, x_2, U62_1, U42_1, U36_1} are replacing on all positions. 5.31/2.03 For all symbols f in {U41_2, U61_2, U11_3, U12_3, U13_3, U14_3, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U12'_3, U11'_3, U13'_3, U14'_3, U32'_3, U31'_3, U33'_3, U34'_3} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U11'(tt, V1, V2) -> U12'(isNatKind(V1), V1, V2) 5.31/2.03 U12'(tt, V1, V2) -> U13'(isNatKind(V2), V1, V2) 5.31/2.03 U13'(tt, V1, V2) -> U14'(isNatKind(V2), V1, V2) 5.31/2.03 U31'(tt, V1, V2) -> U32'(isNatKind(V1), V1, V2) 5.31/2.03 U32'(tt, V1, V2) -> U33'(isNatKind(V2), V1, V2) 5.31/2.03 U33'(tt, V1, V2) -> U34'(isNatKind(V2), V1, V2) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U36(tt) -> tt 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (15) QCSDependencyGraphProof (EQUIVALENT) 5.31/2.03 The approximation of the Context-Sensitive Dependency Graph [LPAR08] contains 0 SCCs with 6 less nodes. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (16) 5.31/2.03 TRUE 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (17) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1, PLUS_2} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U83'_3, U82'_3, U84'_3, U81'_3} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U82'(tt, M, N) -> U83'(isNat(N), M, N) 5.31/2.03 U83'(tt, M, N) -> U84'(isNatKind(N), M, N) 5.31/2.03 U84'(tt, M, N) -> PLUS(N, M) 5.31/2.03 PLUS(N, s(M)) -> U81'(isNat(M), M, N) 5.31/2.03 U81'(tt, M, N) -> U82'(isNatKind(M), M, N) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (18) QCSDPSubtermProof (EQUIVALENT) 5.31/2.03 We use the subterm processor [DA_EMMES]. 5.31/2.03 5.31/2.03 5.31/2.03 The following pairs can be oriented strictly and are deleted. 5.31/2.03 5.31/2.03 PLUS(N, s(M)) -> U81'(isNat(M), M, N) 5.31/2.03 The remaining pairs can at least be oriented weakly. 5.31/2.03 5.31/2.03 U82'(tt, M, N) -> U83'(isNat(N), M, N) 5.31/2.03 U83'(tt, M, N) -> U84'(isNatKind(N), M, N) 5.31/2.03 U84'(tt, M, N) -> PLUS(N, M) 5.31/2.03 U81'(tt, M, N) -> U82'(isNatKind(M), M, N) 5.31/2.03 Used ordering: Combined order from the following AFS and order. 5.31/2.03 U83'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 U82'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 U84'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 PLUS(x1, x2) = x2 5.31/2.03 5.31/2.03 U81'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 5.31/2.03 Subterm Order 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (19) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1, PLUS_2} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U83'_3, U82'_3, U84'_3, U81'_3} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U82'(tt, M, N) -> U83'(isNat(N), M, N) 5.31/2.03 U83'(tt, M, N) -> U84'(isNatKind(N), M, N) 5.31/2.03 U84'(tt, M, N) -> PLUS(N, M) 5.31/2.03 U81'(tt, M, N) -> U82'(isNatKind(M), M, N) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (20) QCSDependencyGraphProof (EQUIVALENT) 5.31/2.03 The approximation of the Context-Sensitive Dependency Graph [LPAR08] contains 0 SCCs with 4 less nodes. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (21) 5.31/2.03 TRUE 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (22) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1, X_2} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U103'_3, U102'_3, U104'_3, U101'_3} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U102'(tt, M, N) -> U103'(isNat(N), M, N) 5.31/2.03 U103'(tt, M, N) -> U104'(isNatKind(N), M, N) 5.31/2.03 U104'(tt, M, N) -> X(N, M) 5.31/2.03 X(N, s(M)) -> U101'(isNat(M), M, N) 5.31/2.03 U101'(tt, M, N) -> U102'(isNatKind(M), M, N) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (23) QCSDPSubtermProof (EQUIVALENT) 5.31/2.03 We use the subterm processor [DA_EMMES]. 5.31/2.03 5.31/2.03 5.31/2.03 The following pairs can be oriented strictly and are deleted. 5.31/2.03 5.31/2.03 X(N, s(M)) -> U101'(isNat(M), M, N) 5.31/2.03 The remaining pairs can at least be oriented weakly. 5.31/2.03 5.31/2.03 U102'(tt, M, N) -> U103'(isNat(N), M, N) 5.31/2.03 U103'(tt, M, N) -> U104'(isNatKind(N), M, N) 5.31/2.03 U104'(tt, M, N) -> X(N, M) 5.31/2.03 U101'(tt, M, N) -> U102'(isNatKind(M), M, N) 5.31/2.03 Used ordering: Combined order from the following AFS and order. 5.31/2.03 U103'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 U102'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 U104'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 X(x1, x2) = x2 5.31/2.03 5.31/2.03 U101'(x1, x2, x3) = x2 5.31/2.03 5.31/2.03 5.31/2.03 Subterm Order 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (24) 5.31/2.03 Obligation: 5.31/2.03 Q-restricted context-sensitive dependency pair problem: 5.31/2.03 The symbols in {plus_2, x_2, U16_1, U23_1, U36_1, U42_1, U51_1, U62_1, s_1, U92_1, X_2} are replacing on all positions. 5.31/2.03 For all symbols f in {U101_3, U102_3, U103_3, U104_3, U11_3, U12_3, U13_3, U14_3, U15_2, U21_2, U22_2, U31_3, U32_3, U33_3, U34_3, U35_2, U41_2, U61_2, U71_2, U72_2, U81_3, U82_3, U83_3, U84_3, U91_2, U103'_3, U102'_3, U104'_3, U101'_3} we have mu(f) = {1}. 5.31/2.03 The symbols in {isNatKind_1, isNat_1} are not replacing on any position. 5.31/2.03 5.31/2.03 The TRS P consists of the following rules: 5.31/2.03 5.31/2.03 U102'(tt, M, N) -> U103'(isNat(N), M, N) 5.31/2.03 U103'(tt, M, N) -> U104'(isNatKind(N), M, N) 5.31/2.03 U104'(tt, M, N) -> X(N, M) 5.31/2.03 U101'(tt, M, N) -> U102'(isNatKind(M), M, N) 5.31/2.03 5.31/2.03 The TRS R consists of the following rules: 5.31/2.03 5.31/2.03 U101(tt, M, N) -> U102(isNatKind(M), M, N) 5.31/2.03 U102(tt, M, N) -> U103(isNat(N), M, N) 5.31/2.03 U103(tt, M, N) -> U104(isNatKind(N), M, N) 5.31/2.03 U104(tt, M, N) -> plus(x(N, M), N) 5.31/2.03 U11(tt, V1, V2) -> U12(isNatKind(V1), V1, V2) 5.31/2.03 U12(tt, V1, V2) -> U13(isNatKind(V2), V1, V2) 5.31/2.03 U13(tt, V1, V2) -> U14(isNatKind(V2), V1, V2) 5.31/2.03 U14(tt, V1, V2) -> U15(isNat(V1), V2) 5.31/2.03 U15(tt, V2) -> U16(isNat(V2)) 5.31/2.03 U16(tt) -> tt 5.31/2.03 U21(tt, V1) -> U22(isNatKind(V1), V1) 5.31/2.03 U22(tt, V1) -> U23(isNat(V1)) 5.31/2.03 U23(tt) -> tt 5.31/2.03 U31(tt, V1, V2) -> U32(isNatKind(V1), V1, V2) 5.31/2.03 U32(tt, V1, V2) -> U33(isNatKind(V2), V1, V2) 5.31/2.03 U33(tt, V1, V2) -> U34(isNatKind(V2), V1, V2) 5.31/2.03 U34(tt, V1, V2) -> U35(isNat(V1), V2) 5.31/2.03 U35(tt, V2) -> U36(isNat(V2)) 5.31/2.03 U36(tt) -> tt 5.31/2.03 U41(tt, V2) -> U42(isNatKind(V2)) 5.31/2.03 U42(tt) -> tt 5.31/2.03 U51(tt) -> tt 5.31/2.03 U61(tt, V2) -> U62(isNatKind(V2)) 5.31/2.03 U62(tt) -> tt 5.31/2.03 U71(tt, N) -> U72(isNatKind(N), N) 5.31/2.03 U72(tt, N) -> N 5.31/2.03 U81(tt, M, N) -> U82(isNatKind(M), M, N) 5.31/2.03 U82(tt, M, N) -> U83(isNat(N), M, N) 5.31/2.03 U83(tt, M, N) -> U84(isNatKind(N), M, N) 5.31/2.03 U84(tt, M, N) -> s(plus(N, M)) 5.31/2.03 U91(tt, N) -> U92(isNatKind(N)) 5.31/2.03 U92(tt) -> 0 5.31/2.03 isNat(0) -> tt 5.31/2.03 isNat(plus(V1, V2)) -> U11(isNatKind(V1), V1, V2) 5.31/2.03 isNat(s(V1)) -> U21(isNatKind(V1), V1) 5.31/2.03 isNat(x(V1, V2)) -> U31(isNatKind(V1), V1, V2) 5.31/2.03 isNatKind(0) -> tt 5.31/2.03 isNatKind(plus(V1, V2)) -> U41(isNatKind(V1), V2) 5.31/2.03 isNatKind(s(V1)) -> U51(isNatKind(V1)) 5.31/2.03 isNatKind(x(V1, V2)) -> U61(isNatKind(V1), V2) 5.31/2.03 plus(N, 0) -> U71(isNat(N), N) 5.31/2.03 plus(N, s(M)) -> U81(isNat(M), M, N) 5.31/2.03 x(N, 0) -> U91(isNat(N), N) 5.31/2.03 x(N, s(M)) -> U101(isNat(M), M, N) 5.31/2.03 5.31/2.03 Q is empty. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (25) QCSDependencyGraphProof (EQUIVALENT) 5.31/2.03 The approximation of the Context-Sensitive Dependency Graph [LPAR08] contains 0 SCCs with 4 less nodes. 5.31/2.03 5.31/2.03 ---------------------------------------- 5.31/2.03 5.31/2.03 (26) 5.31/2.03 TRUE 5.53/2.11 EOF