Input TRS: 1: a__U11(tt(),V2) -> a__U12(a__isNat(V2)) 2: a__U12(tt()) -> tt() 3: a__U21(tt()) -> tt() 4: a__U31(tt(),N) -> mark(N) 5: a__U41(tt(),M,N) -> a__U42(a__isNat(N),M,N) 6: a__U42(tt(),M,N) -> s(a__plus(mark(N),mark(M))) 7: a__isNat(0()) -> tt() 8: a__isNat(plus(V1,V2)) -> a__U11(a__isNat(V1),V2) 9: a__isNat(s(V1)) -> a__U21(a__isNat(V1)) 10: a__plus(N,0()) -> a__U31(a__isNat(N),N) 11: a__plus(N,s(M)) -> a__U41(a__isNat(M),M,N) 12: mark(U11(X1,X2)) -> a__U11(mark(X1),X2) 13: mark(U12(X)) -> a__U12(mark(X)) 14: mark(isNat(X)) -> a__isNat(X) 15: mark(U21(X)) -> a__U21(mark(X)) 16: mark(U31(X1,X2)) -> a__U31(mark(X1),X2) 17: mark(U41(X1,X2,X3)) -> a__U41(mark(X1),X2,X3) 18: mark(U42(X1,X2,X3)) -> a__U42(mark(X1),X2,X3) 19: mark(plus(X1,X2)) -> a__plus(mark(X1),mark(X2)) 20: mark(tt()) -> tt() 21: mark(s(X)) -> s(mark(X)) 22: mark(0()) -> 0() 23: a__U11(X1,X2) -> U11(X1,X2) 24: a__U12(X) -> U12(X) 25: a__isNat(X) -> isNat(X) 26: a__U21(X) -> U21(X) 27: a__U31(X1,X2) -> U31(X1,X2) 28: a__U41(X1,X2,X3) -> U41(X1,X2,X3) 29: a__U42(X1,X2,X3) -> U42(X1,X2,X3) 30: a__plus(X1,X2) -> plus(X1,X2) Number of strict rules: 30 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #a__U42(tt(),M,N) -> #a__plus(mark(N),mark(M)) #2: #a__U42(tt(),M,N) -> #mark(N) #3: #a__U42(tt(),M,N) -> #mark(M) #4: #mark(U12(X)) -> #a__U12(mark(X)) #5: #mark(U12(X)) -> #mark(X) #6: #a__isNat(s(V1)) -> #a__U21(a__isNat(V1)) #7: #a__isNat(s(V1)) -> #a__isNat(V1) #8: #a__plus(N,s(M)) -> #a__U41(a__isNat(M),M,N) #9: #a__plus(N,s(M)) -> #a__isNat(M) #10: #mark(U11(X1,X2)) -> #a__U11(mark(X1),X2) #11: #mark(U11(X1,X2)) -> #mark(X1) #12: #mark(isNat(X)) -> #a__isNat(X) #13: #a__plus(N,0()) -> #a__U31(a__isNat(N),N) #14: #a__plus(N,0()) -> #a__isNat(N) #15: #a__U41(tt(),M,N) -> #a__U42(a__isNat(N),M,N) #16: #a__U41(tt(),M,N) -> #a__isNat(N) #17: #mark(U41(X1,X2,X3)) -> #a__U41(mark(X1),X2,X3) #18: #mark(U41(X1,X2,X3)) -> #mark(X1) #19: #mark(plus(X1,X2)) -> #a__plus(mark(X1),mark(X2)) #20: #mark(plus(X1,X2)) -> #mark(X1) #21: #mark(plus(X1,X2)) -> #mark(X2) #22: #mark(s(X)) -> #mark(X) #23: #mark(U31(X1,X2)) -> #a__U31(mark(X1),X2) #24: #mark(U31(X1,X2)) -> #mark(X1) #25: #a__U11(tt(),V2) -> #a__U12(a__isNat(V2)) #26: #a__U11(tt(),V2) -> #a__isNat(V2) #27: #a__isNat(plus(V1,V2)) -> #a__U11(a__isNat(V1),V2) #28: #a__isNat(plus(V1,V2)) -> #a__isNat(V1) #29: #mark(U21(X)) -> #a__U21(mark(X)) #30: #mark(U21(X)) -> #mark(X) #31: #a__U31(tt(),N) -> #mark(N) #32: #mark(U42(X1,X2,X3)) -> #a__U42(mark(X1),X2,X3) #33: #mark(U42(X1,X2,X3)) -> #mark(X1) Number of SCCs: 2, DPs: 24, edges: 180 SCC { #7 #26..28 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a__plus(x1,x2) weight: 0 U21(x1) weight: (/ 3 4) + x1 U11(x1,x2) weight: 0 s(x1) weight: (/ 1 4) + x1 #a__U31(x1,x2) weight: 0 U42(x1,x2,x3) weight: 0 #a__isNat(x1) weight: x1 #a__U11(x1,x2) weight: (/ 1 4) + x2 a__U31(x1,x2) weight: 0 U12(x1) weight: 0 #a__U42(x1,x2,x3) weight: 0 a__U41(x1,x2,x3) weight: 0 #a__U12(x1) weight: 0 #a__U21(x1) weight: 0 #a__plus(x1,x2) weight: 0 #mark(x1) weight: 0 0() weight: 0 a__U21(x1) weight: (/ 1 2) mark(x1) weight: 0 a__U11(x1,x2) weight: 0 a__U42(x1,x2,x3) weight: 0 a__U12(x1) weight: 0 isNat(x1) weight: 0 plus(x1,x2) weight: (/ 1 2) + x1 + x2 U31(x1,x2) weight: 0 #a__U41(x1,x2,x3) weight: 0 tt() weight: 0 a__isNat(x1) weight: (/ 1 4) U41(x1,x2,x3) weight: 0 Usable rules: { 1 2 7 8 23..25 } Removed DPs: #7 #26..28 Number of SCCs: 1, DPs: 20, edges: 170 SCC { #1..3 #5 #8 #11 #13 #15 #17..24 #30..33 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a__plus(x1,x2) weight: (/ 3 8) + x1 + x2 U21(x1) weight: x1 U11(x1,x2) weight: x1 s(x1) weight: (/ 3 8) + x1 #a__U31(x1,x2) weight: (/ 1 8) + x2 U42(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 #a__isNat(x1) weight: 0 #a__U11(x1,x2) weight: (/ 1 8) a__U31(x1,x2) weight: (/ 1 4) + x1 + x2 U12(x1) weight: x1 #a__U42(x1,x2,x3) weight: (/ 3 8) + x2 + x3 a__U41(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 #a__U12(x1) weight: 0 #a__U21(x1) weight: 0 #a__plus(x1,x2) weight: (/ 1 4) + x1 + x2 #mark(x1) weight: x1 0() weight: 0 a__U21(x1) weight: x1 mark(x1) weight: x1 a__U11(x1,x2) weight: x1 a__U42(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 a__U12(x1) weight: x1 isNat(x1) weight: 0 plus(x1,x2) weight: (/ 3 8) + x1 + x2 U31(x1,x2) weight: (/ 1 4) + x1 + x2 #a__U41(x1,x2,x3) weight: (/ 1 2) + x2 + x3 tt() weight: 0 a__isNat(x1) weight: 0 U41(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 Usable rules: { 1..30 } Removed DPs: #1..3 #8 #13 #15 #17..24 #31..33 Number of SCCs: 1, DPs: 3, edges: 9 SCC { #5 #11 #30 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a__plus(x1,x2) weight: x1 + x2 U21(x1) weight: (/ 1 8) + x1 U11(x1,x2) weight: x1 + x2 s(x1) weight: (/ 3 4) + x1 #a__U31(x1,x2) weight: (/ 1 8) U42(x1,x2,x3) weight: (/ 3 4) + x2 + x3 #a__isNat(x1) weight: 0 #a__U11(x1,x2) weight: (/ 1 8) a__U31(x1,x2) weight: x2 U12(x1) weight: x1 #a__U42(x1,x2,x3) weight: (/ 3 8) a__U41(x1,x2,x3) weight: (/ 3 4) + x2 + x3 #a__U12(x1) weight: 0 #a__U21(x1) weight: 0 #a__plus(x1,x2) weight: (/ 1 4) + x1 + x2 #mark(x1) weight: x1 0() weight: 0 a__U21(x1) weight: (/ 1 8) + x1 mark(x1) weight: x1 a__U11(x1,x2) weight: x1 + x2 a__U42(x1,x2,x3) weight: (/ 3 4) + x2 + x3 a__U12(x1) weight: x1 isNat(x1) weight: x1 plus(x1,x2) weight: x1 + x2 U31(x1,x2) weight: x2 #a__U41(x1,x2,x3) weight: (/ 1 2) tt() weight: 0 a__isNat(x1) weight: x1 U41(x1,x2,x3) weight: (/ 3 4) + x2 + x3 Usable rules: { } Removed DPs: #30 Number of SCCs: 1, DPs: 2, edges: 4 SCC { #5 #11 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a__plus(x1,x2) weight: x1 + x2 U21(x1) weight: (/ 1 4) + x1 U11(x1,x2) weight: (/ 1 8) + x1 + x2 s(x1) weight: (/ 1 8) + x1 #a__U31(x1,x2) weight: (/ 1 8) U42(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 #a__isNat(x1) weight: 0 #a__U11(x1,x2) weight: (/ 1 8) a__U31(x1,x2) weight: (/ 1 8) + x1 + x2 U12(x1) weight: x1 #a__U42(x1,x2,x3) weight: (/ 3 8) a__U41(x1,x2,x3) weight: (/ 3 8) + x1 + x3 #a__U12(x1) weight: 0 #a__U21(x1) weight: 0 #a__plus(x1,x2) weight: (/ 1 4) #mark(x1) weight: x1 0() weight: 0 a__U21(x1) weight: (/ 1 8) mark(x1) weight: (/ 1 4) + x1 a__U11(x1,x2) weight: 0 a__U42(x1,x2,x3) weight: (/ 1 2) + x2 a__U12(x1) weight: 0 isNat(x1) weight: x1 plus(x1,x2) weight: (/ 1 4) + x1 + x2 U31(x1,x2) weight: (/ 1 4) + x2 #a__U41(x1,x2,x3) weight: (/ 1 2) tt() weight: 0 a__isNat(x1) weight: 0 U41(x1,x2,x3) weight: (/ 1 2) + x2 Usable rules: { } Removed DPs: #11 Number of SCCs: 1, DPs: 1, edges: 1 SCC { #5 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a__plus(x1,x2) weight: x1 + x2 U21(x1) weight: (/ 1 4) + x1 U11(x1,x2) weight: (/ 1 8) + x1 + x2 s(x1) weight: (/ 1 8) + x1 #a__U31(x1,x2) weight: (/ 1 8) U42(x1,x2,x3) weight: (/ 3 4) + x1 + x2 + x3 #a__isNat(x1) weight: 0 #a__U11(x1,x2) weight: (/ 1 8) a__U31(x1,x2) weight: (/ 1 8) + x1 + x2 U12(x1) weight: (/ 1 8) + x1 #a__U42(x1,x2,x3) weight: (/ 3 8) a__U41(x1,x2,x3) weight: (/ 3 8) + x1 + x3 #a__U12(x1) weight: 0 #a__U21(x1) weight: 0 #a__plus(x1,x2) weight: (/ 1 4) #mark(x1) weight: x1 0() weight: 0 a__U21(x1) weight: (/ 1 8) mark(x1) weight: (/ 1 4) + x1 a__U11(x1,x2) weight: 0 a__U42(x1,x2,x3) weight: (/ 1 2) + x2 a__U12(x1) weight: 0 isNat(x1) weight: x1 plus(x1,x2) weight: (/ 1 4) + x1 + x2 U31(x1,x2) weight: (/ 1 4) + x2 #a__U41(x1,x2,x3) weight: (/ 1 2) tt() weight: 0 a__isNat(x1) weight: 0 U41(x1,x2,x3) weight: (/ 1 2) + x2 Usable rules: { } Removed DPs: #5 Number of SCCs: 0, DPs: 0, edges: 0 YES