Input TRS: 1: U11(tt(),V1,V2) -> U12(isNatKind(activate(V1)),activate(V1),activate(V2)) 2: U12(tt(),V1,V2) -> U13(isNatKind(activate(V2)),activate(V1),activate(V2)) 3: U13(tt(),V1,V2) -> U14(isNatKind(activate(V2)),activate(V1),activate(V2)) 4: U14(tt(),V1,V2) -> U15(isNat(activate(V1)),activate(V2)) 5: U15(tt(),V2) -> U16(isNat(activate(V2))) 6: U16(tt()) -> tt() 7: U21(tt(),V1) -> U22(isNatKind(activate(V1)),activate(V1)) 8: U22(tt(),V1) -> U23(isNat(activate(V1))) 9: U23(tt()) -> tt() 10: U31(tt(),V2) -> U32(isNatKind(activate(V2))) 11: U32(tt()) -> tt() 12: U41(tt()) -> tt() 13: U51(tt(),N) -> U52(isNatKind(activate(N)),activate(N)) 14: U52(tt(),N) -> activate(N) 15: U61(tt(),M,N) -> U62(isNatKind(activate(M)),activate(M),activate(N)) 16: U62(tt(),M,N) -> U63(isNat(activate(N)),activate(M),activate(N)) 17: U63(tt(),M,N) -> U64(isNatKind(activate(N)),activate(M),activate(N)) 18: U64(tt(),M,N) -> s(plus(activate(N),activate(M))) 19: isNat(n__0()) -> tt() 20: isNat(n__plus(V1,V2)) -> U11(isNatKind(activate(V1)),activate(V1),activate(V2)) 21: isNat(n__s(V1)) -> U21(isNatKind(activate(V1)),activate(V1)) 22: isNatKind(n__0()) -> tt() 23: isNatKind(n__plus(V1,V2)) -> U31(isNatKind(activate(V1)),activate(V2)) 24: isNatKind(n__s(V1)) -> U41(isNatKind(activate(V1))) 25: plus(N,0()) -> U51(isNat(N),N) 26: plus(N,s(M)) -> U61(isNat(M),M,N) 27: 0() -> n__0() 28: plus(X1,X2) -> n__plus(X1,X2) 29: s(X) -> n__s(X) 30: activate(n__0()) -> 0() 31: activate(n__plus(X1,X2)) -> plus(activate(X1),activate(X2)) 32: activate(n__s(X)) -> s(activate(X)) 33: activate(X) -> X Number of strict rules: 33 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #U12(tt(),V1,V2) -> #U13(isNatKind(activate(V2)),activate(V1),activate(V2)) #2: #U12(tt(),V1,V2) -> #isNatKind(activate(V2)) #3: #U12(tt(),V1,V2) -> #activate(V2) #4: #U12(tt(),V1,V2) -> #activate(V1) #5: #U12(tt(),V1,V2) -> #activate(V2) #6: #U51(tt(),N) -> #U52(isNatKind(activate(N)),activate(N)) #7: #U51(tt(),N) -> #isNatKind(activate(N)) #8: #U51(tt(),N) -> #activate(N) #9: #U51(tt(),N) -> #activate(N) #10: #isNatKind(n__s(V1)) -> #U41(isNatKind(activate(V1))) #11: #isNatKind(n__s(V1)) -> #isNatKind(activate(V1)) #12: #isNatKind(n__s(V1)) -> #activate(V1) #13: #isNatKind(n__plus(V1,V2)) -> #U31(isNatKind(activate(V1)),activate(V2)) #14: #isNatKind(n__plus(V1,V2)) -> #isNatKind(activate(V1)) #15: #isNatKind(n__plus(V1,V2)) -> #activate(V1) #16: #isNatKind(n__plus(V1,V2)) -> #activate(V2) #17: #activate(n__plus(X1,X2)) -> #plus(activate(X1),activate(X2)) #18: #activate(n__plus(X1,X2)) -> #activate(X1) #19: #activate(n__plus(X1,X2)) -> #activate(X2) #20: #U52(tt(),N) -> #activate(N) #21: #activate(n__0()) -> #0() #22: #plus(N,0()) -> #U51(isNat(N),N) #23: #plus(N,0()) -> #isNat(N) #24: #isNat(n__plus(V1,V2)) -> #U11(isNatKind(activate(V1)),activate(V1),activate(V2)) #25: #isNat(n__plus(V1,V2)) -> #isNatKind(activate(V1)) #26: #isNat(n__plus(V1,V2)) -> #activate(V1) #27: #isNat(n__plus(V1,V2)) -> #activate(V1) #28: #isNat(n__plus(V1,V2)) -> #activate(V2) #29: #U21(tt(),V1) -> #U22(isNatKind(activate(V1)),activate(V1)) #30: #U21(tt(),V1) -> #isNatKind(activate(V1)) #31: #U21(tt(),V1) -> #activate(V1) #32: #U21(tt(),V1) -> #activate(V1) #33: #U31(tt(),V2) -> #U32(isNatKind(activate(V2))) #34: #U31(tt(),V2) -> #isNatKind(activate(V2)) #35: #U31(tt(),V2) -> #activate(V2) #36: #U15(tt(),V2) -> #U16(isNat(activate(V2))) #37: #U15(tt(),V2) -> #isNat(activate(V2)) #38: #U15(tt(),V2) -> #activate(V2) #39: #U63(tt(),M,N) -> #U64(isNatKind(activate(N)),activate(M),activate(N)) #40: #U63(tt(),M,N) -> #isNatKind(activate(N)) #41: #U63(tt(),M,N) -> #activate(N) #42: #U63(tt(),M,N) -> #activate(M) #43: #U63(tt(),M,N) -> #activate(N) #44: #activate(n__s(X)) -> #s(activate(X)) #45: #activate(n__s(X)) -> #activate(X) #46: #plus(N,s(M)) -> #U61(isNat(M),M,N) #47: #plus(N,s(M)) -> #isNat(M) #48: #isNat(n__s(V1)) -> #U21(isNatKind(activate(V1)),activate(V1)) #49: #isNat(n__s(V1)) -> #isNatKind(activate(V1)) #50: #isNat(n__s(V1)) -> #activate(V1) #51: #isNat(n__s(V1)) -> #activate(V1) #52: #U62(tt(),M,N) -> #U63(isNat(activate(N)),activate(M),activate(N)) #53: #U62(tt(),M,N) -> #isNat(activate(N)) #54: #U62(tt(),M,N) -> #activate(N) #55: #U62(tt(),M,N) -> #activate(M) #56: #U62(tt(),M,N) -> #activate(N) #57: #U13(tt(),V1,V2) -> #U14(isNatKind(activate(V2)),activate(V1),activate(V2)) #58: #U13(tt(),V1,V2) -> #isNatKind(activate(V2)) #59: #U13(tt(),V1,V2) -> #activate(V2) #60: #U13(tt(),V1,V2) -> #activate(V1) #61: #U13(tt(),V1,V2) -> #activate(V2) #62: #U11(tt(),V1,V2) -> #U12(isNatKind(activate(V1)),activate(V1),activate(V2)) #63: #U11(tt(),V1,V2) -> #isNatKind(activate(V1)) #64: #U11(tt(),V1,V2) -> #activate(V1) #65: #U11(tt(),V1,V2) -> #activate(V1) #66: #U11(tt(),V1,V2) -> #activate(V2) #67: #U22(tt(),V1) -> #U23(isNat(activate(V1))) #68: #U22(tt(),V1) -> #isNat(activate(V1)) #69: #U22(tt(),V1) -> #activate(V1) #70: #U61(tt(),M,N) -> #U62(isNatKind(activate(M)),activate(M),activate(N)) #71: #U61(tt(),M,N) -> #isNatKind(activate(M)) #72: #U61(tt(),M,N) -> #activate(M) #73: #U61(tt(),M,N) -> #activate(M) #74: #U61(tt(),M,N) -> #activate(N) #75: #U14(tt(),V1,V2) -> #U15(isNat(activate(V1)),activate(V2)) #76: #U14(tt(),V1,V2) -> #isNat(activate(V1)) #77: #U14(tt(),V1,V2) -> #activate(V1) #78: #U14(tt(),V1,V2) -> #activate(V2) #79: #U64(tt(),M,N) -> #s(plus(activate(N),activate(M))) #80: #U64(tt(),M,N) -> #plus(activate(N),activate(M)) #81: #U64(tt(),M,N) -> #activate(N) #82: #U64(tt(),M,N) -> #activate(M) Number of SCCs: 1, DPs: 75, edges: 350 SCC { #1..9 #11..20 #22..32 #34 #35 #37..43 #45..66 #68..78 #80..82 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #0() weight: 0 #U32(x1) weight: 0 isNatKind(x1) weight: (/ 1 8) U16(x1) weight: (/ 3 4) U21(x1,x2) weight: (/ 1 4) U11(x1,x2,x3) weight: (/ 1 4) U64(x1,x2,x3) weight: (/ 1 2) + x2 + x3 s(x1) weight: (/ 1 2) + x1 #isNat(x1) weight: x1 activate(x1) weight: x1 #plus(x1,x2) weight: x1 + x2 #activate(x1) weight: x1 #U23(x1) weight: 0 U23(x1) weight: (/ 3 8) + x1 U63(x1,x2,x3) weight: (/ 1 2) + x2 + x3 #U13(x1,x2,x3) weight: x2 + x3 #U52(x1,x2) weight: x2 U12(x1,x2,x3) weight: (/ 3 8) + x2 #U16(x1) weight: 0 n__s(x1) weight: (/ 1 2) + x1 #U12(x1,x2,x3) weight: x2 + x3 #U62(x1,x2,x3) weight: (/ 3 8) + x2 + x3 0() weight: 0 #U14(x1,x2,x3) weight: x2 + x3 #s(x1) weight: 0 U62(x1,x2,x3) weight: (/ 1 2) + x2 + x3 n__plus(x1,x2) weight: x1 + x2 #U63(x1,x2,x3) weight: (/ 1 4) + x2 + x3 #U15(x1,x2) weight: x2 U32(x1) weight: 0 n__0() weight: 0 U14(x1,x2,x3) weight: (/ 1 2) + x1 isNat(x1) weight: (/ 1 8) U52(x1,x2) weight: x2 U15(x1,x2) weight: (/ 5 8) U61(x1,x2,x3) weight: (/ 1 2) + x2 + x3 plus(x1,x2) weight: x1 + x2 #U51(x1,x2) weight: x2 #U11(x1,x2,x3) weight: x2 + x3 #U64(x1,x2,x3) weight: (/ 1 8) + x2 + x3 U31(x1,x2) weight: 0 #U41(x1) weight: 0 #U21(x1,x2) weight: (/ 1 4) + x1 + x2 #U22(x1,x2) weight: (/ 1 8) + x2 tt() weight: 0 U13(x1,x2,x3) weight: (/ 1 2) U22(x1,x2) weight: (/ 3 8) U51(x1,x2) weight: x2 #isNatKind(x1) weight: x1 U41(x1) weight: 0 #U31(x1,x2) weight: x2 #U61(x1,x2,x3) weight: (/ 1 2) + x2 + x3 Usable rules: { 10..18 22..33 } Removed DPs: #11 #12 #29..32 #39..43 #45 #47..56 #68..74 #80..82 Number of SCCs: 1, DPs: 42, edges: 142 SCC { #1..9 #13..20 #22..28 #34 #35 #37 #38 #57..66 #75..78 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #0() weight: 0 #U32(x1) weight: 0 isNatKind(x1) weight: (/ 1 8) U16(x1) weight: 0 U21(x1,x2) weight: (/ 1 8) U11(x1,x2,x3) weight: (/ 1 8) U64(x1,x2,x3) weight: (/ 11 8) + x2 + x3 s(x1) weight: (/ 1 2) + x1 #isNat(x1) weight: x1 activate(x1) weight: x1 #plus(x1,x2) weight: (/ 1 2) + x1 + x2 #activate(x1) weight: x1 #U23(x1) weight: 0 U23(x1) weight: x1 U63(x1,x2,x3) weight: (/ 11 8) + x2 + x3 #U13(x1,x2,x3) weight: (/ 3 8) + x2 + x3 #U52(x1,x2) weight: (/ 1 8) + x2 U12(x1,x2,x3) weight: (/ 1 8) #U16(x1) weight: 0 n__s(x1) weight: (/ 1 2) + x1 #U12(x1,x2,x3) weight: (/ 1 2) + x2 + x3 #U62(x1,x2,x3) weight: (/ 3 8) + x2 + x3 0() weight: 0 #U14(x1,x2,x3) weight: (/ 1 4) + x2 + x3 #s(x1) weight: 0 U62(x1,x2,x3) weight: (/ 11 8) + x2 + x3 n__plus(x1,x2) weight: (/ 7 8) + x1 + x2 #U63(x1,x2,x3) weight: (/ 1 4) + x2 + x3 #U15(x1,x2) weight: (/ 1 8) + x2 U32(x1) weight: 0 n__0() weight: 0 U14(x1,x2,x3) weight: x1 isNat(x1) weight: (/ 1 8) U52(x1,x2) weight: x2 U15(x1,x2) weight: 0 U61(x1,x2,x3) weight: (/ 11 8) + x2 + x3 plus(x1,x2) weight: (/ 7 8) + x1 + x2 #U51(x1,x2) weight: (/ 1 4) + x1 + x2 #U11(x1,x2,x3) weight: (/ 5 8) + x1 + x2 + x3 #U64(x1,x2,x3) weight: (/ 1 8) + x2 + x3 U31(x1,x2) weight: 0 #U41(x1) weight: 0 #U21(x1,x2) weight: (/ 1 4) + x1 + x2 #U22(x1,x2) weight: (/ 1 8) + x2 tt() weight: 0 U13(x1,x2,x3) weight: (/ 1 8) U22(x1,x2) weight: (/ 1 8) U51(x1,x2) weight: x2 #isNatKind(x1) weight: x1 U41(x1) weight: 0 #U31(x1,x2) weight: (/ 1 8) + x1 + x2 #U61(x1,x2,x3) weight: (/ 1 2) Usable rules: { 1..33 } Removed DPs: #1..9 #13..20 #22..28 #34 #35 #37 #38 #57..66 #75..78 Number of SCCs: 0, DPs: 0, edges: 0 YES