Input TRS: 1: ack(0(),y) -> s(y) 2: ack(s(x),0()) -> ack(x,s(0())) 3: ack(s(x),s(y)) -> ack(x,ack(s(x),y)) 4: f(s(x),y) -> f(x,s(x)) 5: f(x,s(y)) -> f(y,x) 6: f(x,y) -> ack(x,y) 7: ack(s(x),y) -> f(x,x) Number of strict rules: 7 Direct Order(PosReal,>,Poly) ... failed. Freezing ack 1: ack❆1_0(y) -> s(y) 2: ack❆1_s(x,0()) -> ack(x,s(0())) 3: ack❆1_s(x,s(y)) -> ack(x,ack❆1_s(x,y)) 4: f(s(x),y) -> f(x,s(x)) 5: f(x,s(y)) -> f(y,x) 6: f(x,y) -> ack(x,y) 7: ack❆1_s(x,y) -> f(x,x) 8: ack(0(),_1) ->= ack❆1_0(_1) 9: ack(s(_1),_2) ->= ack❆1_s(_1,_2) Number of strict rules: 7 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #ack❆1_s(x,0()) -> #ack(x,s(0())) #2: #f(x,y) -> #ack(x,y) #3: #ack(s(_1),_2) ->? #ack❆1_s(_1,_2) #4: #ack❆1_s(x,y) -> #f(x,x) #5: #f(x,s(y)) -> #f(y,x) #6: #ack❆1_s(x,s(y)) -> #ack(x,ack❆1_s(x,y)) #7: #ack❆1_s(x,s(y)) -> #ack❆1_s(x,y) #8: #ack(0(),_1) ->? #ack❆1_0(_1) #9: #f(s(x),y) -> #f(x,s(x)) Number of SCCs: 1, DPs: 8, edges: 20 SCC { #1..7 #9 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. s(x1) weight: (/ 1 2) + x1 ack(x1,x2) weight: 0 #ack❆1_0(x1) weight: 0 f(x1,x2) weight: max{0, (/ 1 8) + x2} 0() weight: (/ 1 8) #f(x1,x2) weight: max{(/ 1 4) + x2, (/ 3 8) + x1} ack❆1_0(x1) weight: (/ 1 8) #ack(x1,x2) weight: max{0, (/ 1 8) + x1} ack❆1_s(x1,x2) weight: 0 #ack❆1_s(x1,x2) weight: max{0, (/ 1 2) + x1} Usable rules: { } Removed DPs: #1..6 #9 Number of SCCs: 1, DPs: 1, edges: 1 SCC { #7 } Removing DPs: Order(PosReal,>,Sum)... succeeded. s(x1) weight: (/ 1 4) + x1 ack(x1,x2) weight: (/ 3 4) + x1 #ack❆1_0(x1) weight: 0 f(x1,x2) weight: (/ 1 2) 0() weight: 0 #f(x1,x2) weight: 0 ack❆1_0(x1) weight: 0 #ack(x1,x2) weight: 0 ack❆1_s(x1,x2) weight: (/ 1 4) + x2 #ack❆1_s(x1,x2) weight: x2 Usable rules: { } Removed DPs: #7 Number of SCCs: 0, DPs: 0, edges: 0 YES