Input TRS: 1: active(p(0())) -> mark(0()) 2: active(p(s(X))) -> mark(X) 3: active(leq(0(),Y)) -> mark(true()) 4: active(leq(s(X),0())) -> mark(false()) 5: active(leq(s(X),s(Y))) -> mark(leq(X,Y)) 6: active(if(true(),X,Y)) -> mark(X) 7: active(if(false(),X,Y)) -> mark(Y) 8: active(diff(X,Y)) -> mark(if(leq(X,Y),0(),s(diff(p(X),Y)))) 9: mark(p(X)) -> active(p(mark(X))) 10: mark(0()) -> active(0()) 11: mark(s(X)) -> active(s(mark(X))) 12: mark(leq(X1,X2)) -> active(leq(mark(X1),mark(X2))) 13: mark(true()) -> active(true()) 14: mark(false()) -> active(false()) 15: mark(if(X1,X2,X3)) -> active(if(mark(X1),X2,X3)) 16: mark(diff(X1,X2)) -> active(diff(mark(X1),mark(X2))) 17: p(mark(X)) -> p(X) 18: p(active(X)) -> p(X) 19: s(mark(X)) -> s(X) 20: s(active(X)) -> s(X) 21: leq(mark(X1),X2) -> leq(X1,X2) 22: leq(X1,mark(X2)) -> leq(X1,X2) 23: leq(active(X1),X2) -> leq(X1,X2) 24: leq(X1,active(X2)) -> leq(X1,X2) 25: if(mark(X1),X2,X3) -> if(X1,X2,X3) 26: if(X1,mark(X2),X3) -> if(X1,X2,X3) 27: if(X1,X2,mark(X3)) -> if(X1,X2,X3) 28: if(active(X1),X2,X3) -> if(X1,X2,X3) 29: if(X1,active(X2),X3) -> if(X1,X2,X3) 30: if(X1,X2,active(X3)) -> if(X1,X2,X3) 31: diff(mark(X1),X2) -> diff(X1,X2) 32: diff(X1,mark(X2)) -> diff(X1,X2) 33: diff(active(X1),X2) -> diff(X1,X2) 34: diff(X1,active(X2)) -> diff(X1,X2) Number of strict rules: 34 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #active(p(s(X))) -> #mark(X) #2: #if(X1,active(X2),X3) -> #if(X1,X2,X3) #3: #active(if(true(),X,Y)) -> #mark(X) #4: #mark(true()) -> #active(true()) #5: #mark(p(X)) -> #active(p(mark(X))) #6: #mark(p(X)) -> #p(mark(X)) #7: #mark(p(X)) -> #mark(X) #8: #mark(s(X)) -> #active(s(mark(X))) #9: #mark(s(X)) -> #s(mark(X)) #10: #mark(s(X)) -> #mark(X) #11: #leq(X1,active(X2)) -> #leq(X1,X2) #12: #leq(active(X1),X2) -> #leq(X1,X2) #13: #mark(leq(X1,X2)) -> #active(leq(mark(X1),mark(X2))) #14: #mark(leq(X1,X2)) -> #leq(mark(X1),mark(X2)) #15: #mark(leq(X1,X2)) -> #mark(X1) #16: #mark(leq(X1,X2)) -> #mark(X2) #17: #diff(mark(X1),X2) -> #diff(X1,X2) #18: #mark(false()) -> #active(false()) #19: #if(X1,X2,active(X3)) -> #if(X1,X2,X3) #20: #if(mark(X1),X2,X3) -> #if(X1,X2,X3) #21: #s(active(X)) -> #s(X) #22: #active(if(false(),X,Y)) -> #mark(Y) #23: #mark(0()) -> #active(0()) #24: #diff(active(X1),X2) -> #diff(X1,X2) #25: #active(leq(s(X),s(Y))) -> #mark(leq(X,Y)) #26: #active(leq(s(X),s(Y))) -> #leq(X,Y) #27: #if(active(X1),X2,X3) -> #if(X1,X2,X3) #28: #leq(X1,mark(X2)) -> #leq(X1,X2) #29: #diff(X1,active(X2)) -> #diff(X1,X2) #30: #if(X1,X2,mark(X3)) -> #if(X1,X2,X3) #31: #p(mark(X)) -> #p(X) #32: #diff(X1,mark(X2)) -> #diff(X1,X2) #33: #s(mark(X)) -> #s(X) #34: #if(X1,mark(X2),X3) -> #if(X1,X2,X3) #35: #leq(mark(X1),X2) -> #leq(X1,X2) #36: #mark(diff(X1,X2)) -> #active(diff(mark(X1),mark(X2))) #37: #mark(diff(X1,X2)) -> #diff(mark(X1),mark(X2)) #38: #mark(diff(X1,X2)) -> #mark(X1) #39: #mark(diff(X1,X2)) -> #mark(X2) #40: #active(leq(0(),Y)) -> #mark(true()) #41: #active(p(0())) -> #mark(0()) #42: #active(diff(X,Y)) -> #mark(if(leq(X,Y),0(),s(diff(p(X),Y)))) #43: #active(diff(X,Y)) -> #if(leq(X,Y),0(),s(diff(p(X),Y))) #44: #active(diff(X,Y)) -> #leq(X,Y) #45: #active(diff(X,Y)) -> #s(diff(p(X),Y)) #46: #active(diff(X,Y)) -> #diff(p(X),Y) #47: #active(diff(X,Y)) -> #p(X) #48: #mark(if(X1,X2,X3)) -> #active(if(mark(X1),X2,X3)) #49: #mark(if(X1,X2,X3)) -> #if(mark(X1),X2,X3) #50: #mark(if(X1,X2,X3)) -> #mark(X1) #51: #active(leq(s(X),0())) -> #mark(false()) #52: #p(active(X)) -> #p(X) Number of SCCs: 6, DPs: 34, edges: 196 SCC { #31 #52 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: x1 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #31 #52 Number of SCCs: 5, DPs: 32, edges: 192 SCC { #21 #33 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: x1 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #21 #33 Number of SCCs: 4, DPs: 30, edges: 188 SCC { #17 #24 #29 #32 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: x1 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #17 #24 Number of SCCs: 4, DPs: 28, edges: 176 SCC { #29 #32 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: x2 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #29 #32 Number of SCCs: 3, DPs: 26, edges: 172 SCC { #11 #12 #28 #35 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: x2 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #11 #28 Number of SCCs: 4, DPs: 24, edges: 160 SCC { #12 #35 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: x1 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: 0 Usable rules: { } Removed DPs: #12 #35 Number of SCCs: 3, DPs: 22, edges: 156 SCC { #2 #19 #20 #27 #30 #34 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: x2 + x3 #active(x1) weight: 0 Usable rules: { } Removed DPs: #2 #19 #30 #34 Number of SCCs: 4, DPs: 18, edges: 124 SCC { #20 #27 } Removing DPs: Order(PosReal,>,Sum)... succeeded. diff(x1,x2) weight: 0 s(x1) weight: 0 false() weight: 0 #p(x1) weight: 0 leq(x1,x2) weight: 0 true() weight: 0 #leq(x1,x2) weight: 0 p(x1) weight: 0 #mark(x1) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 #s(x1) weight: 0 mark(x1) weight: (/ 1 2) + x1 #diff(x1,x2) weight: 0 active(x1) weight: (/ 1 2) + x1 #if(x1,x2,x3) weight: x1 #active(x1) weight: 0 Usable rules: { } Removed DPs: #20 #27 Number of SCCs: 3, DPs: 16, edges: 120 SCC { #1 #3 #5 #7 #10 #13 #15 #16 #22 #25 #36 #38 #39 #42 #48 #50 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. diff(x1,x2) weight: max{(/ 1 2) + x2, (/ 1 4) + x1} s(x1) weight: x1 false() weight: (/ 1 2) #p(x1) weight: 0 leq(x1,x2) weight: max{(/ 3 8) + x2, (/ 1 8) + x1} true() weight: (/ 3 8) #leq(x1,x2) weight: 0 p(x1) weight: x1 #mark(x1) weight: x1 0() weight: (/ 1 8) if(x1,x2,x3) weight: max{x3, (/ 3 8) + x2, (/ 1 8) + x1} #s(x1) weight: 0 mark(x1) weight: x1 #diff(x1,x2) weight: 0 active(x1) weight: x1 #if(x1,x2,x3) weight: 0 #active(x1) weight: x1 Usable rules: { 1..34 } Removed DPs: #3 #15 #16 #38 #39 #50 Number of SCCs: 5, DPs: 10, edges: 26 SCC { #13 #25 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... Order(PosReal,>,Sum-Sum; NegReal,≥,Sum)... Order(PosReal,>,MaxSum-Sum; NegReal,≥,Sum)... failed. Removing edges: failed. Finding a loop...