Input TRS: 1: a__U11(tt(),V1,V2) -> a__U12(a__isNat(V1),V2) 2: a__U12(tt(),V2) -> a__U13(a__isNat(V2)) 3: a__U13(tt()) -> tt() 4: a__U21(tt(),V1) -> a__U22(a__isNat(V1)) 5: a__U22(tt()) -> tt() 6: a__U31(tt(),N) -> mark(N) 7: a__U41(tt(),M,N) -> s(a__plus(mark(N),mark(M))) 8: a__and(tt(),X) -> mark(X) 9: a__isNat(0()) -> tt() 10: a__isNat(plus(V1,V2)) -> a__U11(a__and(a__isNatKind(V1),isNatKind(V2)),V1,V2) 11: a__isNat(s(V1)) -> a__U21(a__isNatKind(V1),V1) 12: a__isNatKind(0()) -> tt() 13: a__isNatKind(plus(V1,V2)) -> a__and(a__isNatKind(V1),isNatKind(V2)) 14: a__isNatKind(s(V1)) -> a__isNatKind(V1) 15: a__plus(N,0()) -> a__U31(a__and(a__isNat(N),isNatKind(N)),N) 16: a__plus(N,s(M)) -> a__U41(a__and(a__and(a__isNat(M),isNatKind(M)),and(isNat(N),isNatKind(N))),M,N) 17: mark(U11(X1,X2,X3)) -> a__U11(mark(X1),X2,X3) 18: mark(U12(X1,X2)) -> a__U12(mark(X1),X2) 19: mark(isNat(X)) -> a__isNat(X) 20: mark(U13(X)) -> a__U13(mark(X)) 21: mark(U21(X1,X2)) -> a__U21(mark(X1),X2) 22: mark(U22(X)) -> a__U22(mark(X)) 23: mark(U31(X1,X2)) -> a__U31(mark(X1),X2) 24: mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) 25: mark(plus(X1,X2)) -> a__plus(mark(X1),mark(X2)) 26: mark(and(X1,X2)) -> a__and(mark(X1),X2) 27: mark(isNatKind(X)) -> a__isNatKind(X) 28: mark(tt()) -> tt() 29: mark(s(X)) -> s(mark(X)) 30: mark(0()) -> 0() 31: a__U11(X1,X2,X3) -> U11(X1,X2,X3) 32: a__U12(X1,X2) -> U12(X1,X2) 33: a__isNat(X) -> isNat(X) 34: a__U13(X) -> U13(X) 35: a__U21(X1,X2) -> U21(X1,X2) 36: a__U22(X) -> U22(X) 37: a__U31(X1,X2) -> U31(X1,X2) 38: a__U41(X1,X2,X3) -> U41(X1,X2,X3) 39: a__plus(X1,X2) -> plus(X1,X2) 40: a__and(X1,X2) -> and(X1,X2) 41: a__isNatKind(X) -> isNatKind(X) Number of strict rules: 41 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #a__U12(tt(),V2) -> #a__U13(a__isNat(V2)) #2: #a__U12(tt(),V2) -> #a__isNat(V2) #3: #mark(s(X)) -> #mark(X) #4: #a__U31(tt(),N) -> #mark(N) #5: #a__isNatKind(plus(V1,V2)) -> #a__and(a__isNatKind(V1),isNatKind(V2)) #6: #a__isNatKind(plus(V1,V2)) -> #a__isNatKind(V1) #7: #a__isNat(s(V1)) -> #a__U21(a__isNatKind(V1),V1) #8: #a__isNat(s(V1)) -> #a__isNatKind(V1) #9: #mark(U41(X1,X2,X3)) -> #a__U41(mark(X1),X2,X3) #10: #mark(U41(X1,X2,X3)) -> #mark(X1) #11: #mark(U31(X1,X2)) -> #a__U31(mark(X1),X2) #12: #mark(U31(X1,X2)) -> #mark(X1) #13: #a__isNatKind(s(V1)) -> #a__isNatKind(V1) #14: #mark(plus(X1,X2)) -> #a__plus(mark(X1),mark(X2)) #15: #mark(plus(X1,X2)) -> #mark(X1) #16: #mark(plus(X1,X2)) -> #mark(X2) #17: #mark(U13(X)) -> #a__U13(mark(X)) #18: #mark(U13(X)) -> #mark(X) #19: #a__U41(tt(),M,N) -> #a__plus(mark(N),mark(M)) #20: #a__U41(tt(),M,N) -> #mark(N) #21: #a__U41(tt(),M,N) -> #mark(M) #22: #a__isNat(plus(V1,V2)) -> #a__U11(a__and(a__isNatKind(V1),isNatKind(V2)),V1,V2) #23: #a__isNat(plus(V1,V2)) -> #a__and(a__isNatKind(V1),isNatKind(V2)) #24: #a__isNat(plus(V1,V2)) -> #a__isNatKind(V1) #25: #mark(U22(X)) -> #a__U22(mark(X)) #26: #mark(U22(X)) -> #mark(X) #27: #mark(isNatKind(X)) -> #a__isNatKind(X) #28: #mark(U11(X1,X2,X3)) -> #a__U11(mark(X1),X2,X3) #29: #mark(U11(X1,X2,X3)) -> #mark(X1) #30: #mark(isNat(X)) -> #a__isNat(X) #31: #mark(and(X1,X2)) -> #a__and(mark(X1),X2) #32: #mark(and(X1,X2)) -> #mark(X1) #33: #mark(U21(X1,X2)) -> #a__U21(mark(X1),X2) #34: #mark(U21(X1,X2)) -> #mark(X1) #35: #a__plus(N,s(M)) -> #a__U41(a__and(a__and(a__isNat(M),isNatKind(M)),and(isNat(N),isNatKind(N))),M,N) #36: #a__plus(N,s(M)) -> #a__and(a__and(a__isNat(M),isNatKind(M)),and(isNat(N),isNatKind(N))) #37: #a__plus(N,s(M)) -> #a__and(a__isNat(M),isNatKind(M)) #38: #a__plus(N,s(M)) -> #a__isNat(M) #39: #a__U11(tt(),V1,V2) -> #a__U12(a__isNat(V1),V2) #40: #a__U11(tt(),V1,V2) -> #a__isNat(V1) #41: #a__and(tt(),X) -> #mark(X) #42: #a__plus(N,0()) -> #a__U31(a__and(a__isNat(N),isNatKind(N)),N) #43: #a__plus(N,0()) -> #a__and(a__isNat(N),isNatKind(N)) #44: #a__plus(N,0()) -> #a__isNat(N) #45: #a__U21(tt(),V1) -> #a__U22(a__isNat(V1)) #46: #a__U21(tt(),V1) -> #a__isNat(V1) #47: #mark(U12(X1,X2)) -> #a__U12(mark(X1),X2) #48: #mark(U12(X1,X2)) -> #mark(X1) Number of SCCs: 1, DPs: 44, edges: 381 SCC { #2..16 #18..24 #26..44 #46..48 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #a__isNatKind(x1) weight: 0 isNatKind(x1) weight: 0 a__plus(x1,x2) weight: (/ 1 4) + x1 + x2 U21(x1,x2) weight: x1 U11(x1,x2,x3) weight: x1 s(x1) weight: (/ 1 4) + x1 #a__U31(x1,x2) weight: x2 #a__isNat(x1) weight: 0 and(x1,x2) weight: x1 + x2 #a__U13(x1) weight: 0 a__U22(x1) weight: x1 #a__U11(x1,x2,x3) weight: 0 a__U31(x1,x2) weight: x1 + x2 U12(x1,x2) weight: x1 a__U41(x1,x2,x3) weight: (/ 1 2) + x1 + x2 + x3 #a__U12(x1,x2) weight: 0 #a__U21(x1,x2) weight: 0 #a__plus(x1,x2) weight: x1 + x2 #mark(x1) weight: x1 0() weight: 0 #a__and(x1,x2) weight: x2 a__U21(x1,x2) weight: x1 mark(x1) weight: x1 a__U11(x1,x2,x3) weight: x1 a__U12(x1,x2) weight: x1 isNat(x1) weight: 0 plus(x1,x2) weight: (/ 1 4) + x1 + x2 #a__U22(x1) weight: 0 a__U13(x1) weight: x1 U31(x1,x2) weight: x1 + x2 #a__U41(x1,x2,x3) weight: x2 + x3 tt() weight: 0 a__isNat(x1) weight: 0 U13(x1) weight: x1 a__isNatKind(x1) weight: 0 U22(x1) weight: x1 a__and(x1,x2) weight: x1 + x2 U41(x1,x2,x3) weight: (/ 1 2) + x1 + x2 + x3 Usable rules: { 1..41 } Removed DPs: #3 #9 #10 #14..16 #35..38 Number of SCCs: 1, DPs: 28, edges: 173 SCC { #2 #4..8 #11..13 #18 #22..24 #26..34 #39..41 #46..48 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #a__isNatKind(x1) weight: x1 isNatKind(x1) weight: (/ 1 16) + x1 a__plus(x1,x2) weight: (/ 3 8) + x1 + x2 U21(x1,x2) weight: (/ 1 16) + x1 + x2 U11(x1,x2,x3) weight: x1 + x2 + x3 s(x1) weight: (/ 1 8) + x1 #a__U31(x1,x2) weight: (/ 1 4) + x2 #a__isNat(x1) weight: x1 and(x1,x2) weight: (/ 1 8) + x1 + x2 #a__U13(x1) weight: 0 a__U22(x1) weight: (/ 1 16) #a__U11(x1,x2,x3) weight: (/ 1 8) + x2 + x3 a__U31(x1,x2) weight: (/ 3 16) + x2 U12(x1,x2) weight: (/ 1 16) + x1 + x2 a__U41(x1,x2,x3) weight: (/ 5 8) + x1 + x2 + x3 #a__U12(x1,x2) weight: (/ 1 16) + x2 #a__U21(x1,x2) weight: (/ 1 16) + x2 #a__plus(x1,x2) weight: 0 #mark(x1) weight: (/ 3 16) + x1 0() weight: 0 #a__and(x1,x2) weight: (/ 1 4) + x2 a__U21(x1,x2) weight: (/ 1 16) + x1 mark(x1) weight: (/ 1 16) + x1 a__U11(x1,x2,x3) weight: (/ 1 16) + x1 + x2 + x3 a__U12(x1,x2) weight: (/ 1 16) isNat(x1) weight: (/ 1 4) + x1 plus(x1,x2) weight: (/ 3 8) + x1 + x2 #a__U22(x1) weight: 0 a__U13(x1) weight: (/ 1 16) U31(x1,x2) weight: (/ 1 8) + x1 + x2 #a__U41(x1,x2,x3) weight: 0 tt() weight: 0 a__isNat(x1) weight: (/ 5 16) U13(x1) weight: (/ 1 16) + x1 a__isNatKind(x1) weight: (/ 1 16) + x1 U22(x1) weight: (/ 1 16) + x1 a__and(x1,x2) weight: (/ 1 8) + x1 + x2 U41(x1,x2,x3) weight: (/ 5 8) + x1 + x2 + x3 Usable rules: { 3 5 9 12 28 30 31 38..41 } Removed DPs: #2 #4..8 #11..13 #18 #22..24 #26..28 #30..34 #39..41 #46..48 Number of SCCs: 1, DPs: 1, edges: 1 SCC { #29 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #a__isNatKind(x1) weight: 0 isNatKind(x1) weight: (/ 1 16) + x1 a__plus(x1,x2) weight: (/ 3 8) + x1 + x2 U21(x1,x2) weight: (/ 1 16) + x1 + x2 U11(x1,x2,x3) weight: (/ 1 16) + x1 + x2 + x3 s(x1) weight: (/ 1 8) + x1 #a__U31(x1,x2) weight: (/ 1 4) #a__isNat(x1) weight: 0 and(x1,x2) weight: (/ 1 8) + x1 + x2 #a__U13(x1) weight: 0 a__U22(x1) weight: (/ 1 16) #a__U11(x1,x2,x3) weight: (/ 1 8) a__U31(x1,x2) weight: (/ 3 16) + x2 U12(x1,x2) weight: (/ 1 8) + x1 + x2 a__U41(x1,x2,x3) weight: (/ 5 8) + x1 + x2 + x3 #a__U12(x1,x2) weight: (/ 1 16) #a__U21(x1,x2) weight: (/ 1 16) #a__plus(x1,x2) weight: 0 #mark(x1) weight: (/ 3 16) + x1 0() weight: 0 #a__and(x1,x2) weight: (/ 1 4) a__U21(x1,x2) weight: (/ 1 16) + x1 mark(x1) weight: (/ 1 16) + x1 a__U11(x1,x2,x3) weight: (/ 1 8) + x1 + x2 + x3 a__U12(x1,x2) weight: (/ 1 8) isNat(x1) weight: (/ 5 16) + x1 plus(x1,x2) weight: (/ 3 8) + x1 + x2 #a__U22(x1) weight: 0 a__U13(x1) weight: (/ 1 16) U31(x1,x2) weight: (/ 1 8) + x1 + x2 #a__U41(x1,x2,x3) weight: 0 tt() weight: 0 a__isNat(x1) weight: (/ 3 8) U13(x1) weight: (/ 1 16) + x1 a__isNatKind(x1) weight: (/ 1 16) + x1 U22(x1) weight: (/ 1 16) + x1 a__and(x1,x2) weight: (/ 1 8) + x1 + x2 U41(x1,x2,x3) weight: (/ 5 8) + x1 + x2 + x3 Usable rules: { } Removed DPs: #29 Number of SCCs: 0, DPs: 0, edges: 0 YES