Input TRS: 1: app(app(\\(),x),x) -> e() 2: app(app(\\(),e()),x) -> x 3: app(app(\\(),x),app(app(.(),x),y)) -> y 4: app(app(\\(),app(app(/(),x),y)),x) -> y 5: app(app(/(),x),x) -> e() 6: app(app(/(),x),e()) -> x 7: app(app(/(),app(app(.(),y),x)),x) -> y 8: app(app(/(),x),app(app(\\(),y),x)) -> y 9: app(app(.(),e()),x) -> x 10: app(app(.(),x),e()) -> x 11: app(app(.(),x),app(app(\\(),x),y)) -> y 12: app(app(.(),app(app(/(),y),x)),x) -> y 13: app(app(map(),f),nil()) -> nil() 14: app(app(map(),f),app(app(cons(),x),xs)) -> app(app(cons(),app(f,x)),app(app(map(),f),xs)) 15: app(app(filter(),f),nil()) -> nil() 16: app(app(filter(),f),app(app(cons(),x),xs)) -> app(app(app(app(filter2(),app(f,x)),f),x),xs) 17: app(app(app(app(filter2(),true()),f),x),xs) -> app(app(cons(),x),app(app(filter(),f),xs)) 18: app(app(app(app(filter2(),false()),f),x),xs) -> app(app(filter(),f),xs) Number of strict rules: 18 Direct Order(PosReal,>,Poly) ... failed. Freezing app 1: app❆2_\\(x,x) -> e() 2: app❆2_\\(e(),x) -> x 3: app❆2_\\(x,app❆2_.(x,y)) -> y 4: app❆2_\\(app❆2_/(x,y),x) -> y 5: app❆2_/(x,x) -> e() 6: app❆2_/(x,e()) -> x 7: app❆2_/(app❆2_.(y,x),x) -> y 8: app❆2_/(x,app❆2_\\(y,x)) -> y 9: app❆2_.(e(),x) -> x 10: app❆2_.(x,e()) -> x 11: app❆2_.(x,app❆2_\\(x,y)) -> y 12: app❆2_.(app❆2_/(y,x),x) -> y 13: app❆2_map(f,nil()) -> nil() 14: app❆2_map(f,app❆2_cons(x,xs)) -> app❆2_cons(app(f,x),app❆2_map(f,xs)) 15: app❆2_filter(f,nil()) -> nil() 16: app❆2_filter(f,app❆2_cons(x,xs)) -> app❆4_filter2(app(f,x),f,x,xs) 17: app❆4_filter2(true(),f,x,xs) -> app❆2_cons(x,app❆2_filter(f,xs)) 18: app❆4_filter2(false(),f,x,xs) -> app❆2_filter(f,xs) 19: app(cons(),_1) ->= app❆1_cons(_1) 20: app(app❆1_cons(_1),_2) ->= app❆2_cons(_1,_2) 21: app(/(),_1) ->= app❆1_/(_1) 22: app(app❆1_/(_1),_2) ->= app❆2_/(_1,_2) 23: app(filter(),_1) ->= app❆1_filter(_1) 24: app(app❆1_filter(_1),_2) ->= app❆2_filter(_1,_2) 25: app(\\(),_1) ->= app❆1_\\(_1) 26: app(app❆1_\\(_1),_2) ->= app❆2_\\(_1,_2) 27: app(map(),_1) ->= app❆1_map(_1) 28: app(app❆1_map(_1),_2) ->= app❆2_map(_1,_2) 29: app(filter2(),_1) ->= app❆1_filter2(_1) 30: app(app❆1_filter2(_1),_2) ->= app❆2_filter2(_1,_2) 31: app(app❆2_filter2(_1,_2),_3) ->= app❆3_filter2(_1,_2,_3) 32: app(app❆3_filter2(_1,_2,_3),_4) ->= app❆4_filter2(_1,_2,_3,_4) 33: app(.(),_1) ->= app❆1_.(_1) 34: app(app❆1_.(_1),_2) ->= app❆2_.(_1,_2) Number of strict rules: 18 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #app(app❆1_filter(_1),_2) ->? #app❆2_filter(_1,_2) #2: #app❆2_map(f,app❆2_cons(x,xs)) -> #app(f,x) #3: #app❆2_map(f,app❆2_cons(x,xs)) -> #app❆2_map(f,xs) #4: #app(app❆1_map(_1),_2) ->? #app❆2_map(_1,_2) #5: #app(app❆1_/(_1),_2) ->? #app❆2_/(_1,_2) #6: #app(app❆1_.(_1),_2) ->? #app❆2_.(_1,_2) #7: #app❆4_filter2(true(),f,x,xs) -> #app❆2_filter(f,xs) #8: #app(app❆3_filter2(_1,_2,_3),_4) ->? #app❆4_filter2(_1,_2,_3,_4) #9: #app(app❆1_\\(_1),_2) ->? #app❆2_\\(_1,_2) #10: #app❆2_filter(f,app❆2_cons(x,xs)) -> #app❆4_filter2(app(f,x),f,x,xs) #11: #app❆2_filter(f,app❆2_cons(x,xs)) -> #app(f,x) #12: #app❆4_filter2(false(),f,x,xs) -> #app❆2_filter(f,xs) Number of SCCs: 1, DPs: 9, edges: 20 SCC { #1..4 #7 #8 #10..12 } Removing DPs: Order(PosReal,>,Sum)... succeeded. #app❆2_map(x1,x2) weight: x2 /() weight: 0 app❆1_map(x1) weight: (/ 3 8) + x1 \\() weight: 0 app❆4_filter2(x1,x2,x3,x4) weight: (/ 3 8) + x1 + x4 app❆1_.(x1) weight: (/ 3 8) + x1 #app❆2_/(x1,x2) weight: 0 app❆2_map(x1,x2) weight: (/ 3 8) + x1 app❆2_\\(x1,x2) weight: (/ 3 8) false() weight: 0 true() weight: 0 filter2() weight: 0 app❆2_filter(x1,x2) weight: (/ 1 2) + x1 #app❆2_.(x1,x2) weight: 0 app❆1_/(x1) weight: (/ 3 8) + x1 app❆2_.(x1,x2) weight: (/ 3 8) nil() weight: 0 app❆1_filter(x1) weight: (/ 3 8) #app(x1,x2) weight: (/ 1 4) + x2 map() weight: 0 #app❆4_filter2(x1,x2,x3,x4) weight: (/ 1 8) + x4 .() weight: 0 app❆2_filter2(x1,x2) weight: (/ 3 8) + x1 + x2 e() weight: 0 #app❆2_filter(x1,x2) weight: x2 cons() weight: 0 app❆2_cons(x1,x2) weight: (/ 3 8) + x1 + x2 app❆2_/(x1,x2) weight: (/ 3 8) filter() weight: 0 app❆1_\\(x1) weight: (/ 3 8) app❆1_filter2(x1) weight: (/ 3 8) + x1 app❆1_cons(x1) weight: (/ 3 8) + x1 app❆3_filter2(x1,x2,x3) weight: (/ 3 8) + x1 + x2 + x3 #app❆2_\\(x1,x2) weight: 0 app(x1,x2) weight: (/ 1 4) Usable rules: { } Removed DPs: #1..4 #7 #8 #10..12 Number of SCCs: 0, DPs: 0, edges: 0 YES