MAYBE Input TRS: 1: app(app(app(fold(),f),x),nil()) -> x 2: app(app(app(fold(),f),x),app(app(cons(),y),z)) -> app(app(f,y),app(app(app(fold(),f),x),z)) 3: app(app(plus(),0()),y) -> y 4: app(app(plus(),app(s(),x)),y) -> app(s(),app(app(plus(),x),y)) 5: app(app(times(),0()),y) -> 0() 6: app(app(times(),app(s(),x)),y) -> app(app(plus(),app(app(times(),x),y)),y) 7: sum() -> app(app(fold(),add()),0()) 8: prod() -> app(app(fold(),mul()),app(s(),0())) Number of strict rules: 8 Direct POLO(bPol) ... failed. Uncurrying app 1: app^3_fold(f,x,nil()) -> x 2: app^3_fold(f,x,app^2_cons(y,z)) -> app(app(f,y),app^3_fold(f,x,z)) 3: app^2_plus(0(),y) -> y 4: app^2_plus(app^1_s(x),y) -> app^1_s(app^2_plus(x,y)) 5: app^2_times(0(),y) -> 0() 6: app^2_times(app^1_s(x),y) -> app^2_plus(app^2_times(x,y),y) 7: sum() -> app^2_fold(add(),0()) 8: prod() -> app^2_fold(mul(),app^1_s(0())) 9: app(plus(),_1) ->= app^1_plus(_1) 10: app(app^1_plus(_1),_2) ->= app^2_plus(_1,_2) 11: app(cons(),_1) ->= app^1_cons(_1) 12: app(app^1_cons(_1),_2) ->= app^2_cons(_1,_2) 13: app(times(),_1) ->= app^1_times(_1) 14: app(app^1_times(_1),_2) ->= app^2_times(_1,_2) 15: app(s(),_1) ->= app^1_s(_1) 16: app(fold(),_1) ->= app^1_fold(_1) 17: app(app^1_fold(_1),_2) ->= app^2_fold(_1,_2) 18: app(app^2_fold(_1,_2),_3) ->= app^3_fold(_1,_2,_3) Number of strict rules: 8 Direct POLO(bPol) ... failed. Dependency Pairs: #1: #app^3_fold(f,x,app^2_cons(y,z)) -> #app(app(f,y),app^3_fold(f,x,z)) #2: #app^3_fold(f,x,app^2_cons(y,z)) -> #app(f,y) #3: #app^3_fold(f,x,app^2_cons(y,z)) -> #app^3_fold(f,x,z) #4: #app^2_times(app^1_s(x),y) -> #app^2_plus(app^2_times(x,y),y) #5: #app^2_times(app^1_s(x),y) -> #app^2_times(x,y) #6: #app(app^1_times(_1),_2) ->? #app^2_times(_1,_2) #7: #app(app^1_plus(_1),_2) ->? #app^2_plus(_1,_2) #8: #app^2_plus(app^1_s(x),y) -> #app^2_plus(x,y) #9: #app(app^2_fold(_1,_2),_3) ->? #app^3_fold(_1,_2,_3) Number of SCCs: 3, DPs: 6 SCC { #5 } POLO(Sum)... succeeded. mul w: 0 prod w: 0 s w: 0 app^1_cons w: 0 app^1_plus w: 0 app^2_fold w: 0 #prod w: 0 app^1_fold w: 0 #app^2_plus w: 0 sum w: 0 app^3_fold w: 0 app^2_plus w: 0 0 w: 0 times w: 0 nil w: 0 #app w: 0 #app^3_fold w: 0 fold w: 0 plus w: 0 cons w: 0 add w: 0 app^1_times w: 0 #app^2_times w: x1 #sum w: 0 app^2_cons w: 0 app^1_s w: x1 + 1 app w: 0 app^2_times w: 0 USABLE RULES: { } Removed DPs: #5 Number of SCCs: 2, DPs: 5 SCC { #8 } POLO(Sum)... succeeded. mul w: 0 prod w: 0 s w: 0 app^1_cons w: 0 app^1_plus w: 0 app^2_fold w: 0 #prod w: 0 app^1_fold w: 0 #app^2_plus w: x1 sum w: 0 app^3_fold w: 0 app^2_plus w: 0 0 w: 0 times w: 0 nil w: 0 #app w: 0 #app^3_fold w: 0 fold w: 0 plus w: 0 cons w: 0 add w: 0 app^1_times w: 0 #app^2_times w: 0 #sum w: 0 app^2_cons w: 0 app^1_s w: x1 + 1 app w: 0 app^2_times w: 0 USABLE RULES: { } Removed DPs: #8 Number of SCCs: 1, DPs: 4 SCC { #1..3 #9 } POLO(Sum)... POLO(max)... succeeded. mul w: 0 prod w: 0 s w: 0 app^1_cons w: x1 app^1_plus w: 1 app^2_fold w: max(x1 + 20821, x2) #prod w: 0 app^1_fold w: x1 #app^2_plus w: 0 sum w: 0 app^3_fold w: max(x1 + 41642, x2 + 20538, x3) app^2_plus w: max(x2) 0 w: 0 times w: 0 nil w: 0 #app w: max(x1 + 37885, x2 + 17064) #app^3_fold w: max(x1 + 58706, x2 + 37884, x3 + 17064) fold w: 0 plus w: 0 cons w: 0 add w: 0 app^1_times w: 1 #app^2_times w: 0 #sum w: 0 app^2_cons w: max(x1 + 20821, x2) app^1_s w: 0 app w: max(x1 + 20821, x2) app^2_times w: max(x2) USABLE RULES: { 1..6 9..18 } Removed DPs: #2 Number of SCCs: 1, DPs: 3 SCC { #1 #3 #9 } POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... failed. Finding a loop... failed.