Input TRS: 1: a__U11(tt(),M,N) -> a__U12(tt(),M,N) 2: a__U12(tt(),M,N) -> s(a__plus(mark(N),mark(M))) 3: a__U21(tt(),M,N) -> a__U22(tt(),M,N) 4: a__U22(tt(),M,N) -> a__plus(a__x(mark(N),mark(M)),mark(N)) 5: a__plus(N,0()) -> mark(N) 6: a__plus(N,s(M)) -> a__U11(tt(),M,N) 7: a__x(N,0()) -> 0() 8: a__x(N,s(M)) -> a__U21(tt(),M,N) 9: mark(U11(X1,X2,X3)) -> a__U11(mark(X1),X2,X3) 10: mark(U12(X1,X2,X3)) -> a__U12(mark(X1),X2,X3) 11: mark(plus(X1,X2)) -> a__plus(mark(X1),mark(X2)) 12: mark(U21(X1,X2,X3)) -> a__U21(mark(X1),X2,X3) 13: mark(U22(X1,X2,X3)) -> a__U22(mark(X1),X2,X3) 14: mark(x(X1,X2)) -> a__x(mark(X1),mark(X2)) 15: mark(tt()) -> tt() 16: mark(s(X)) -> s(mark(X)) 17: mark(0()) -> 0() 18: a__U11(X1,X2,X3) -> U11(X1,X2,X3) 19: a__U12(X1,X2,X3) -> U12(X1,X2,X3) 20: a__plus(X1,X2) -> plus(X1,X2) 21: a__U21(X1,X2,X3) -> U21(X1,X2,X3) 22: a__U22(X1,X2,X3) -> U22(X1,X2,X3) 23: a__x(X1,X2) -> x(X1,X2) Number of strict rules: 23 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #a__U12(tt(),M,N) -> #a__plus(mark(N),mark(M)) #2: #a__U12(tt(),M,N) -> #mark(N) #3: #a__U12(tt(),M,N) -> #mark(M) #4: #a__plus(N,s(M)) -> #a__U11(tt(),M,N) #5: #mark(U22(X1,X2,X3)) -> #a__U22(mark(X1),X2,X3) #6: #mark(U22(X1,X2,X3)) -> #mark(X1) #7: #mark(U11(X1,X2,X3)) -> #a__U11(mark(X1),X2,X3) #8: #mark(U11(X1,X2,X3)) -> #mark(X1) #9: #mark(plus(X1,X2)) -> #a__plus(mark(X1),mark(X2)) #10: #mark(plus(X1,X2)) -> #mark(X1) #11: #mark(plus(X1,X2)) -> #mark(X2) #12: #mark(U21(X1,X2,X3)) -> #a__U21(mark(X1),X2,X3) #13: #mark(U21(X1,X2,X3)) -> #mark(X1) #14: #mark(x(X1,X2)) -> #a__x(mark(X1),mark(X2)) #15: #mark(x(X1,X2)) -> #mark(X1) #16: #mark(x(X1,X2)) -> #mark(X2) #17: #mark(U12(X1,X2,X3)) -> #a__U12(mark(X1),X2,X3) #18: #mark(U12(X1,X2,X3)) -> #mark(X1) #19: #a__plus(N,0()) -> #mark(N) #20: #mark(s(X)) -> #mark(X) #21: #a__U21(tt(),M,N) -> #a__U22(tt(),M,N) #22: #a__U11(tt(),M,N) -> #a__U12(tt(),M,N) #23: #a__x(N,s(M)) -> #a__U21(tt(),M,N) #24: #a__U22(tt(),M,N) -> #a__plus(a__x(mark(N),mark(M)),mark(N)) #25: #a__U22(tt(),M,N) -> #a__x(mark(N),mark(M)) #26: #a__U22(tt(),M,N) -> #mark(N) #27: #a__U22(tt(),M,N) -> #mark(M) #28: #a__U22(tt(),M,N) -> #mark(N) Number of SCCs: 1, DPs: 28, edges: 253 SCC { #1..28 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__plus(x1,x2) weight: max{(/ 3 16) + x2, x1} U21(x1,x2,x3) weight: max{(/ 3 16) + x3, (/ 9 32) + x2, (/ 1 8) + x1} U11(x1,x2,x3) weight: max{x3, (/ 3 16) + x2, (/ 1 32) + x1} s(x1) weight: x1 #a__x(x1,x2) weight: max{(/ 5 16) + x2, (/ 7 32) + x1} a__U22(x1,x2,x3) weight: max{(/ 3 16) + x3, (/ 9 32) + x2, (/ 5 32) + x1} #a__U11(x1,x2,x3) weight: max{0, (/ 1 32) + x3, (/ 3 16) + x2} a__x(x1,x2) weight: max{(/ 9 32) + x2, (/ 3 16) + x1} U12(x1,x2,x3) weight: max{x3, (/ 3 16) + x2, (/ 1 16) + x1} x(x1,x2) weight: max{(/ 9 32) + x2, (/ 3 16) + x1} #a__U12(x1,x2,x3) weight: max{0, (/ 1 32) + x3, (/ 3 16) + x2} #a__U21(x1,x2,x3) weight: max{0, (/ 7 32) + x3, (/ 5 16) + x2} #a__plus(x1,x2) weight: max{(/ 3 16) + x2, (/ 1 32) + x1} #mark(x1) weight: (/ 1 32) + x1 0() weight: (/ 7 32) a__U21(x1,x2,x3) weight: max{(/ 3 16) + x3, (/ 9 32) + x2, (/ 1 8) + x1} mark(x1) weight: x1 a__U11(x1,x2,x3) weight: max{x3, (/ 3 16) + x2, (/ 1 32) + x1} a__U12(x1,x2,x3) weight: max{x3, (/ 3 16) + x2, (/ 1 16) + x1} plus(x1,x2) weight: max{(/ 3 16) + x2, x1} #a__U22(x1,x2,x3) weight: max{0, (/ 7 32) + x3, (/ 5 16) + x2} tt() weight: (/ 3 32) U22(x1,x2,x3) weight: max{(/ 3 16) + x3, (/ 9 32) + x2, (/ 5 32) + x1} Usable rules: { 1..23 } Removed DPs: #3 #6 #8 #11 #13 #15 #16 #18 #26..28 Number of SCCs: 1, DPs: 17, edges: 52 SCC { #1 #2 #4 #5 #7 #9 #10 #12 #14 #17 #19..25 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... succeeded. a__plus(x1,x2) status: [x1,x2] precedence above: U11 s #a__U11 U12 #a__U12 a__U11 a__U12 plus tt U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 U11(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus s #a__U11 U12 #a__U12 a__U11 a__U12 plus tt s(x1) status: [x1] precedence above: #a__U11 #a__x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 a__U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__U11(x1,x2,x3) status: x3 a__x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 U12(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 #a__U12 a__U11 a__U12 plus tt x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__U12(x1,x2,x3) status: x3 #a__U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__plus(x1,x2) status: x1 #mark(x1) status: x1 0() status: [] precedence above: mark a__U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 mark(x1) status: x1 a__U11(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U12 plus tt a__U12(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U11 plus tt plus(x1,x2) status: [x1,x2] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U11 a__U12 tt #a__U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus tt U22 tt() status: [] precedence above: U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt Usable rules: { 1..23 } Removed DPs: #7 #9 #10 #17 #20 #23..25 Number of SCCs: 1, DPs: 3, edges: 3 SCC { #1 #4 #22 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... succeeded. a__plus(x1,x2) status: [x1,x2] precedence above: U11 s #a__U11 U12 #a__U12 a__U11 a__U12 plus tt U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 U11(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus s #a__U11 U12 #a__U12 a__U11 a__U12 plus tt s(x1) status: [x1] precedence above: #a__U11 #a__U12 tt #a__x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 a__U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__U11(x1,x2,x3) status: [x2] precedence above: s #a__U12 tt a__x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 U12(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 #a__U12 a__U11 a__U12 plus tt x(x1,x2) status: [x2,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__U12(x1,x2,x3) status: [x2] precedence above: #a__U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 #a__plus(x1,x2) status: x2 #mark(x1) status: x1 0() status: [] precedence above: mark a__U21(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 mark a__U11 a__U12 plus #a__U22 tt U22 mark(x1) status: x1 a__U11(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U12 plus tt a__U12(x1,x2,x3) status: [x3,x2,x1] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U11 plus tt plus(x1,x2) status: [x1,x2] precedence above: a__plus U11 s #a__U11 U12 #a__U12 a__U11 a__U12 tt #a__U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus tt U22 tt() status: [] precedence above: U22(x1,x2,x3) status: [x2,x3,x1] precedence above: a__plus U21 U11 s #a__x a__U22 #a__U11 a__x U12 x #a__U12 #a__U21 a__U21 mark a__U11 a__U12 plus #a__U22 tt Usable rules: { 1..23 } Removed DPs: #1 #22 Number of SCCs: 0, DPs: 0, edges: 0 YES