Input TRS: 1: a__f(X) -> cons(mark(X),f(g(X))) 2: a__g(0()) -> s(0()) 3: a__g(s(X)) -> s(s(a__g(mark(X)))) 4: a__sel(0(),cons(X,Y)) -> mark(X) 5: a__sel(s(X),cons(Y,Z)) -> a__sel(mark(X),mark(Z)) 6: mark(f(X)) -> a__f(mark(X)) 7: mark(g(X)) -> a__g(mark(X)) 8: mark(sel(X1,X2)) -> a__sel(mark(X1),mark(X2)) 9: mark(cons(X1,X2)) -> cons(mark(X1),X2) 10: mark(0()) -> 0() 11: mark(s(X)) -> s(mark(X)) 12: a__f(X) -> f(X) 13: a__g(X) -> g(X) 14: a__sel(X1,X2) -> sel(X1,X2) Number of strict rules: 14 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #mark(f(X)) -> #a__f(mark(X)) #2: #mark(f(X)) -> #mark(X) #3: #mark(cons(X1,X2)) -> #mark(X1) #4: #mark(s(X)) -> #mark(X) #5: #mark(g(X)) -> #a__g(mark(X)) #6: #mark(g(X)) -> #mark(X) #7: #a__sel(s(X),cons(Y,Z)) -> #a__sel(mark(X),mark(Z)) #8: #a__sel(s(X),cons(Y,Z)) -> #mark(X) #9: #a__sel(s(X),cons(Y,Z)) -> #mark(Z) #10: #a__g(s(X)) -> #a__g(mark(X)) #11: #a__g(s(X)) -> #mark(X) #12: #a__f(X) -> #mark(X) #13: #mark(sel(X1,X2)) -> #a__sel(mark(X1),mark(X2)) #14: #mark(sel(X1,X2)) -> #mark(X1) #15: #mark(sel(X1,X2)) -> #mark(X2) #16: #a__sel(0(),cons(X,Y)) -> #mark(X) Number of SCCs: 1, DPs: 16, edges: 112 SCC { #1..16 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__g(x1) weight: x1 s(x1) weight: x1 #a__g(x1) weight: (/ 1 4) + x1 a__f(x1) weight: x1 f(x1) weight: x1 #mark(x1) weight: (/ 1 4) + x1 0() weight: 0 sel(x1,x2) weight: max{x2, (/ 1 4) + x1} #a__sel(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 2) + x1} mark(x1) weight: x1 a__sel(x1,x2) weight: max{x2, (/ 1 4) + x1} cons(x1,x2) weight: max{x2, x1} #a__f(x1) weight: (/ 1 4) + x1 g(x1) weight: x1 Usable rules: { 1..14 } Removed DPs: #8 #14 Number of SCCs: 1, DPs: 14, edges: 83 SCC { #1..7 #9..13 #15 #16 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__g(x1) weight: x1 s(x1) weight: x1 #a__g(x1) weight: (/ 1 4) + x1 a__f(x1) weight: x1 f(x1) weight: x1 #mark(x1) weight: (/ 1 4) + x1 0() weight: 0 sel(x1,x2) weight: max{(/ 3 4) + x2, (/ 1 2) + x1} #a__sel(x1,x2) weight: max{(/ 1 4) + x2, (/ 1 2) + x1} mark(x1) weight: x1 a__sel(x1,x2) weight: max{(/ 3 4) + x2, (/ 1 2) + x1} cons(x1,x2) weight: max{x2, x1} #a__f(x1) weight: (/ 1 4) + x1 g(x1) weight: x1 Usable rules: { 1..14 } Removed DPs: #13 #15 Number of SCCs: 2, DPs: 10, edges: 42 SCC { #7 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... succeeded. a__g(x1) weight: x1 status: [x1] precedence above: s 0 sel mark a__sel cons g s(x1) weight: x1 status: [x1] precedence above: sel mark a__sel cons #a__g(x1) weight: x1 status: [] precedence above: a__f(x1) weight: (/ 3 4) + x1 status: [] precedence above: f sel a__sel cons f(x1) weight: (/ 3 4) + x1 status: [] precedence above: a__f sel a__sel cons #mark(x1) weight: x1 status: [] precedence above: 0() weight: (/ 1 4) status: [] precedence above: s sel mark a__sel cons sel(x1,x2) weight: (/ 1 4) + x2 status: [] precedence above: a__sel #a__sel(x1,x2) weight: (/ 1 4) + x2 + x1 status: [x1,x2] precedence above: a__f f sel mark a__sel cons mark(x1) weight: x1 status: x1 a__sel(x1,x2) weight: (/ 1 4) + x2 status: [] precedence above: sel cons(x1,x2) weight: max{x2, (/ 1 2) + x1} status: [] precedence above: sel a__sel #a__f(x1) weight: (/ 1 4) status: [] precedence above: g(x1) weight: x1 status: [x1] precedence above: a__g s 0 sel mark a__sel cons Usable rules: { 1..14 } Removed DPs: #7 Number of SCCs: 1, DPs: 9, edges: 41 SCC { #1..6 #10..12 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. a__g(x1) weight: x1 s(x1) weight: x1 #a__g(x1) weight: (/ 1 4) + x1 a__f(x1) weight: (/ 1 4) + x1 f(x1) weight: (/ 1 4) + x1 #mark(x1) weight: (/ 1 4) + x1 0() weight: 0 sel(x1,x2) weight: max{(/ 1 4) + x2, (/ 3 4) + x1} #a__sel(x1,x2) weight: 0 mark(x1) weight: x1 a__sel(x1,x2) weight: max{(/ 1 4) + x2, (/ 3 4) + x1} cons(x1,x2) weight: max{x2, (/ 1 4) + x1} #a__f(x1) weight: (/ 1 2) + x1 g(x1) weight: x1 Usable rules: { 1..14 } Removed DPs: #2 #3 #12 Number of SCCs: 1, DPs: 5, edges: 13 SCC { #4..6 #10 #11 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... succeeded. a__g(x1) weight: x1 status: [x1] precedence above: s #a__g 0 sel mark a__sel cons g s(x1) weight: x1 status: [x1] precedence above: sel mark a__sel cons #a__g(x1) weight: x1 status: [x1] precedence above: a__g s 0 sel mark a__sel cons g a__f(x1) weight: (/ 3 4) + x1 status: [] precedence above: f sel a__sel cons f(x1) weight: (/ 3 4) + x1 status: [] precedence above: a__f sel a__sel cons #mark(x1) weight: x1 status: x1 0() weight: (/ 1 4) status: [] precedence above: s sel mark a__sel cons sel(x1,x2) weight: (/ 1 4) + x2 status: [] precedence above: a__sel #a__sel(x1,x2) weight: (/ 1 4) + x2 + x1 status: [x1,x2] precedence above: a__f f sel mark a__sel cons mark(x1) weight: x1 status: x1 a__sel(x1,x2) weight: (/ 1 4) + x2 status: [] precedence above: sel cons(x1,x2) weight: max{x2, (/ 1 2) + x1} status: [] precedence above: sel a__sel #a__f(x1) weight: (/ 1 4) status: [] precedence above: g(x1) weight: x1 status: [x1] precedence above: a__g s #a__g 0 sel mark a__sel cons Usable rules: { 1..14 } Removed DPs: #4 #6 #10 #11 Number of SCCs: 0, DPs: 0, edges: 0 YES