MAYBE Input TRS: 1: app(app(*(),x),app(app(+(),y),z)) -> app(app(+(),app(app(*(),x),y)),app(app(*(),x),z)) 2: app(app(*(),app(app(+(),y),z)),x) -> app(app(+(),app(app(*(),x),y)),app(app(*(),x),z)) 3: app(app(*(),app(app(*(),x),y)),z) -> app(app(*(),x),app(app(*(),y),z)) 4: app(app(+(),app(app(+(),x),y)),z) -> app(app(+(),x),app(app(+(),y),z)) 5: app(app(map(),f),nil()) -> nil() 6: app(app(map(),f),app(app(cons(),x),xs)) -> app(app(cons(),app(f,x)),app(app(map(),f),xs)) 7: app(app(filter(),f),nil()) -> nil() 8: app(app(filter(),f),app(app(cons(),x),xs)) -> app(app(app(app(filter2(),app(f,x)),f),x),xs) 9: app(app(app(app(filter2(),true()),f),x),xs) -> app(app(cons(),x),app(app(filter(),f),xs)) 10: app(app(app(app(filter2(),false()),f),x),xs) -> app(app(filter(),f),xs) Number of strict rules: 10 Direct POLO(bPol) ... failed. Uncurrying app 1: app^2_*(x,app^2_+(y,z)) -> app^2_+(app^2_*(x,y),app^2_*(x,z)) 2: app^2_*(app^2_+(y,z),x) -> app^2_+(app^2_*(x,y),app^2_*(x,z)) 3: app^2_*(app^2_*(x,y),z) -> app^2_*(x,app^2_*(y,z)) 4: app^2_+(app^2_+(x,y),z) -> app^2_+(x,app^2_+(y,z)) 5: app^2_map(f,nil()) -> nil() 6: app^2_map(f,app^2_cons(x,xs)) -> app^2_cons(app(f,x),app^2_map(f,xs)) 7: app^2_filter(f,nil()) -> nil() 8: app^2_filter(f,app^2_cons(x,xs)) -> app^4_filter2(app(f,x),f,x,xs) 9: app^4_filter2(true(),f,x,xs) -> app^2_cons(x,app^2_filter(f,xs)) 10: app^4_filter2(false(),f,x,xs) -> app^2_filter(f,xs) 11: app(cons(),_1) ->= app^1_cons(_1) 12: app(app^1_cons(_1),_2) ->= app^2_cons(_1,_2) 13: app(filter(),_1) ->= app^1_filter(_1) 14: app(app^1_filter(_1),_2) ->= app^2_filter(_1,_2) 15: app(+(),_1) ->= app^1_+(_1) 16: app(app^1_+(_1),_2) ->= app^2_+(_1,_2) 17: app(map(),_1) ->= app^1_map(_1) 18: app(app^1_map(_1),_2) ->= app^2_map(_1,_2) 19: app(filter2(),_1) ->= app^1_filter2(_1) 20: app(app^1_filter2(_1),_2) ->= app^2_filter2(_1,_2) 21: app(app^2_filter2(_1,_2),_3) ->= app^3_filter2(_1,_2,_3) 22: app(app^3_filter2(_1,_2,_3),_4) ->= app^4_filter2(_1,_2,_3,_4) 23: app(*(),_1) ->= app^1_*(_1) 24: app(app^1_*(_1),_2) ->= app^2_*(_1,_2) Number of strict rules: 10 Direct POLO(bPol) ... failed. Dependency Pairs: #1: #app^2_*(app^2_+(y,z),x) -> #app^2_+(app^2_*(x,y),app^2_*(x,z)) #2: #app^2_*(app^2_+(y,z),x) -> #app^2_*(x,y) #3: #app^2_*(app^2_+(y,z),x) -> #app^2_*(x,z) #4: #app^2_map(f,app^2_cons(x,xs)) -> #app(f,x) #5: #app^2_map(f,app^2_cons(x,xs)) -> #app^2_map(f,xs) #6: #app^4_filter2(true(),f,x,xs) -> #app^2_filter(f,xs) #7: #app(app^1_*(_1),_2) ->? #app^2_*(_1,_2) #8: #app(app^1_filter(_1),_2) ->? #app^2_filter(_1,_2) #9: #app^4_filter2(false(),f,x,xs) -> #app^2_filter(f,xs) #10: #app(app^3_filter2(_1,_2,_3),_4) ->? #app^4_filter2(_1,_2,_3,_4) #11: #app(app^1_+(_1),_2) ->? #app^2_+(_1,_2) #12: #app^2_*(app^2_*(x,y),z) -> #app^2_*(x,app^2_*(y,z)) #13: #app^2_*(app^2_*(x,y),z) -> #app^2_*(y,z) #14: #app^2_*(x,app^2_+(y,z)) -> #app^2_+(app^2_*(x,y),app^2_*(x,z)) #15: #app^2_*(x,app^2_+(y,z)) -> #app^2_*(x,y) #16: #app^2_*(x,app^2_+(y,z)) -> #app^2_*(x,z) #17: #app^2_filter(f,app^2_cons(x,xs)) -> #app^4_filter2(app(f,x),f,x,xs) #18: #app^2_filter(f,app^2_cons(x,xs)) -> #app(f,x) #19: #app^2_+(app^2_+(x,y),z) -> #app^2_+(x,app^2_+(y,z)) #20: #app^2_+(app^2_+(x,y),z) -> #app^2_+(y,z) #21: #app(app^1_map(_1),_2) ->? #app^2_map(_1,_2) Number of SCCs: 3, DPs: 16 SCC { #19 #20 } POLO(Sum)... succeeded. app^1_cons w: 0 app^1_+ w: 0 #app^2_map w: 0 app^2_filter2 w: 0 app^4_filter2 w: 0 false w: 0 app^1_* w: 0 app^2_* w: 0 app^1_filter2 w: 0 true w: 0 filter2 w: 0 #app^4_filter2 w: 0 nil w: 0 #app w: 0 map w: 0 app^1_filter w: 0 app^2_+ w: x1 + x2 + 1 cons w: 0 filter w: 0 + w: 0 app^3_filter2 w: 0 app^2_filter w: 0 app^1_map w: 0 app^2_cons w: 0 #app^2_* w: 0 app^2_map w: 0 #app^2_filter w: 0 * w: 0 #app^2_+ w: x1 app w: 0 USABLE RULES: { } Removed DPs: #19 #20 Number of SCCs: 2, DPs: 14 SCC { #2 #3 #12 #13 #15 #16 } POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... failed. Finding a loop... failed.