Input TRS: 1: a(a(append(),nil()),ys) -> ys 2: a(a(append(),a(a(cons(),x),xs)),ys) -> a(a(cons(),x),a(a(append(),xs),ys)) 3: a(a(filter(),f),nil()) -> nil() 4: a(a(filter(),f),a(a(cons(),x),xs)) -> a(a(a(if(),a(f,x)),x),a(a(filter(),f),xs)) 5: a(a(le(),0()),y) -> true() 6: a(a(le(),a(s(),x)),0()) -> false() 7: a(a(le(),a(s(),x)),a(s(),y)) -> a(a(le(),x),y) 8: a(a(a(if(),true()),x),xs) -> a(a(cons(),x),xs) 9: a(a(a(if(),false()),x),xs) -> xs 10: a(a(not(),f),b) -> a(not2(),a(f,b)) 11: a(not2(),true()) -> false() 12: a(not2(),false()) -> true() 13: a(qs(),nil()) -> nil() 14: a(qs(),a(a(cons(),x),xs)) -> a(a(append(),a(qs(),a(a(filter(),a(le(),x)),xs))),a(a(cons(),x),a(qs(),a(a(filter(),a(not(),a(le(),x))),xs)))) Number of strict rules: 14 Direct Order(PosReal,>,Poly) ... failed. Freezing a 1: a❆2_append(nil(),ys) -> ys 2: a❆2_append(a❆2_cons(x,xs),ys) -> a❆2_cons(x,a❆2_append(xs,ys)) 3: a❆2_filter(f,nil()) -> nil() 4: a❆2_filter(f,a❆2_cons(x,xs)) -> a❆3_if(a(f,x),x,a❆2_filter(f,xs)) 5: a❆2_le(0(),y) -> true() 6: a❆2_le(a❆1_s(x),0()) -> false() 7: a❆2_le(a❆1_s(x),a❆1_s(y)) -> a❆2_le(x,y) 8: a❆3_if(true(),x,xs) -> a❆2_cons(x,xs) 9: a❆3_if(false(),x,xs) -> xs 10: a❆2_not(f,b) -> a❆1_not2(a(f,b)) 11: a❆1_not2(true()) -> false() 12: a❆1_not2(false()) -> true() 13: a❆1_qs(nil()) -> nil() 14: a❆1_qs(a❆2_cons(x,xs)) -> a❆2_append(a❆1_qs(a❆2_filter(a❆1_le(x),xs)),a❆2_cons(x,a❆1_qs(a❆2_filter(a❆1_not(a❆1_le(x)),xs)))) 15: a(qs(),_1) ->= a❆1_qs(_1) 16: a(le(),_1) ->= a❆1_le(_1) 17: a(a❆1_le(_1),_2) ->= a❆2_le(_1,_2) 18: a(append(),_1) ->= a❆1_append(_1) 19: a(a❆1_append(_1),_2) ->= a❆2_append(_1,_2) 20: a(if(),_1) ->= a❆1_if(_1) 21: a(a❆1_if(_1),_2) ->= a❆2_if(_1,_2) 22: a(a❆2_if(_1,_2),_3) ->= a❆3_if(_1,_2,_3) 23: a(cons(),_1) ->= a❆1_cons(_1) 24: a(a❆1_cons(_1),_2) ->= a❆2_cons(_1,_2) 25: a(s(),_1) ->= a❆1_s(_1) 26: a(filter(),_1) ->= a❆1_filter(_1) 27: a(a❆1_filter(_1),_2) ->= a❆2_filter(_1,_2) 28: a(not2(),_1) ->= a❆1_not2(_1) 29: a(not(),_1) ->= a❆1_not(_1) 30: a(a❆1_not(_1),_2) ->= a❆2_not(_1,_2) Number of strict rules: 14 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #a❆2_append(a❆2_cons(x,xs),ys) -> #a❆2_append(xs,ys) #2: #a❆1_qs(a❆2_cons(x,xs)) -> #a❆2_append(a❆1_qs(a❆2_filter(a❆1_le(x),xs)),a❆2_cons(x,a❆1_qs(a❆2_filter(a❆1_not(a❆1_le(x)),xs)))) #3: #a❆1_qs(a❆2_cons(x,xs)) -> #a❆1_qs(a❆2_filter(a❆1_le(x),xs)) #4: #a❆1_qs(a❆2_cons(x,xs)) -> #a❆2_filter(a❆1_le(x),xs) #5: #a❆1_qs(a❆2_cons(x,xs)) -> #a❆1_qs(a❆2_filter(a❆1_not(a❆1_le(x)),xs)) #6: #a❆1_qs(a❆2_cons(x,xs)) -> #a❆2_filter(a❆1_not(a❆1_le(x)),xs) #7: #a(a❆1_not(_1),_2) ->? #a❆2_not(_1,_2) #8: #a❆2_le(a❆1_s(x),a❆1_s(y)) -> #a❆2_le(x,y) #9: #a❆2_not(f,b) -> #a❆1_not2(a(f,b)) #10: #a❆2_not(f,b) -> #a(f,b) #11: #a(not2(),_1) ->? #a❆1_not2(_1) #12: #a(a❆2_if(_1,_2),_3) ->? #a❆3_if(_1,_2,_3) #13: #a(a❆1_filter(_1),_2) ->? #a❆2_filter(_1,_2) #14: #a(a❆1_le(_1),_2) ->? #a❆2_le(_1,_2) #15: #a(a❆1_append(_1),_2) ->? #a❆2_append(_1,_2) #16: #a(qs(),_1) ->? #a❆1_qs(_1) #17: #a❆2_filter(f,a❆2_cons(x,xs)) -> #a❆3_if(a(f,x),x,a❆2_filter(f,xs)) #18: #a❆2_filter(f,a❆2_cons(x,xs)) -> #a(f,x) #19: #a❆2_filter(f,a❆2_cons(x,xs)) -> #a❆2_filter(f,xs) Number of SCCs: 3, DPs: 12, edges: 29 SCC { #1 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a(x1,x2) weight: 0 le() weight: 0 a❆2_le(x1,x2) weight: 0 a❆1_filter(x1) weight: 0 a❆2_append(x1,x2) weight: 0 #a❆3_if(x1,x2,x3) weight: 0 s() weight: 0 #a❆2_le(x1,x2) weight: 0 a❆3_if(x1,x2,x3) weight: 0 false() weight: 0 a❆1_cons(x1) weight: 0 a❆1_qs(x1) weight: 0 true() weight: 0 a❆1_le(x1) weight: 0 #a❆1_not2(x1) weight: 0 a❆2_if(x1,x2) weight: 0 qs() weight: 0 a❆1_s(x1) weight: 0 append() weight: 0 a❆2_filter(x1,x2) weight: 0 if() weight: 0 0() weight: 0 a❆2_cons(x1,x2) weight: (/ 1 2) + x2 a❆1_if(x1) weight: 0 nil() weight: 0 not2() weight: 0 #a❆1_qs(x1) weight: 0 a❆1_append(x1) weight: 0 a❆1_not(x1) weight: 0 #a❆2_not(x1,x2) weight: 0 cons() weight: 0 #a(x1,x2) weight: 0 a❆2_not(x1,x2) weight: 0 filter() weight: 0 #a❆2_filter(x1,x2) weight: 0 a❆1_not2(x1) weight: 0 #a❆2_append(x1,x2) weight: x1 not() weight: 0 Usable rules: { } Removed DPs: #1 Number of SCCs: 2, DPs: 11, edges: 28 SCC { #8 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a(x1,x2) weight: 0 le() weight: 0 a❆2_le(x1,x2) weight: 0 a❆1_filter(x1) weight: 0 a❆2_append(x1,x2) weight: 0 #a❆3_if(x1,x2,x3) weight: 0 s() weight: 0 #a❆2_le(x1,x2) weight: x2 a❆3_if(x1,x2,x3) weight: 0 false() weight: 0 a❆1_cons(x1) weight: 0 a❆1_qs(x1) weight: 0 true() weight: 0 a❆1_le(x1) weight: 0 #a❆1_not2(x1) weight: 0 a❆2_if(x1,x2) weight: 0 qs() weight: 0 a❆1_s(x1) weight: (/ 1 2) + x1 append() weight: 0 a❆2_filter(x1,x2) weight: 0 if() weight: 0 0() weight: 0 a❆2_cons(x1,x2) weight: (/ 1 2) a❆1_if(x1) weight: 0 nil() weight: 0 not2() weight: 0 #a❆1_qs(x1) weight: 0 a❆1_append(x1) weight: 0 a❆1_not(x1) weight: 0 #a❆2_not(x1,x2) weight: 0 cons() weight: 0 #a(x1,x2) weight: 0 a❆2_not(x1,x2) weight: 0 filter() weight: 0 #a❆2_filter(x1,x2) weight: 0 a❆1_not2(x1) weight: 0 #a❆2_append(x1,x2) weight: 0 not() weight: 0 Usable rules: { } Removed DPs: #8 Number of SCCs: 1, DPs: 10, edges: 27 SCC { #3..7 #10 #13 #16 #18 #19 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a(x1,x2) weight: (/ 1 8) + x2 le() weight: 0 a❆2_le(x1,x2) weight: (/ 1 4) a❆1_filter(x1) weight: (/ 1 4) + x1 a❆2_append(x1,x2) weight: (/ 1 4) #a❆3_if(x1,x2,x3) weight: 0 s() weight: 0 #a❆2_le(x1,x2) weight: 0 a❆3_if(x1,x2,x3) weight: (/ 1 4) + x1 false() weight: 0 a❆1_cons(x1) weight: (/ 1 4) a❆1_qs(x1) weight: (/ 1 4) + x1 true() weight: 0 a❆1_le(x1) weight: 0 #a❆1_not2(x1) weight: 0 a❆2_if(x1,x2) weight: (/ 1 4) qs() weight: 0 a❆1_s(x1) weight: (/ 1 4) append() weight: 0 a❆2_filter(x1,x2) weight: (/ 1 4) if() weight: 0 0() weight: 0 a❆2_cons(x1,x2) weight: (/ 3 8) + x1 a❆1_if(x1) weight: (/ 1 4) nil() weight: 0 not2() weight: 0 #a❆1_qs(x1) weight: 0 a❆1_append(x1) weight: (/ 1 4) a❆1_not(x1) weight: x1 #a❆2_not(x1,x2) weight: x1 cons() weight: 0 #a(x1,x2) weight: x1 a❆2_not(x1,x2) weight: (/ 1 4) + x1 filter() weight: 0 #a❆2_filter(x1,x2) weight: x1 a❆1_not2(x1) weight: (/ 3 8) #a❆2_append(x1,x2) weight: 0 not() weight: 0 Usable rules: { } Removed DPs: #13 Number of SCCs: 1, DPs: 9, edges: 23 SCC { #3..7 #10 #16 #18 #19 } Removing DPs: Order(PosReal,>,Sum)... succeeded. a(x1,x2) weight: (/ 1 4) le() weight: 0 a❆2_le(x1,x2) weight: (/ 3 8) a❆1_filter(x1) weight: (/ 3 8) a❆2_append(x1,x2) weight: (/ 3 8) + x2 #a❆3_if(x1,x2,x3) weight: 0 s() weight: 0 #a❆2_le(x1,x2) weight: 0 a❆3_if(x1,x2,x3) weight: (/ 1 2) + x2 + x3 false() weight: 0 a❆1_cons(x1) weight: (/ 3 8) a❆1_qs(x1) weight: (/ 3 8) + x1 true() weight: 0 a❆1_le(x1) weight: (/ 3 8) + x1 #a❆1_not2(x1) weight: 0 a❆2_if(x1,x2) weight: (/ 3 8) qs() weight: 0 a❆1_s(x1) weight: (/ 3 8) append() weight: 0 a❆2_filter(x1,x2) weight: (/ 3 8) + x2 if() weight: 0 0() weight: 0 a❆2_cons(x1,x2) weight: (/ 1 2) + x1 + x2 a❆1_if(x1) weight: (/ 3 8) nil() weight: 0 not2() weight: 0 #a❆1_qs(x1) weight: (/ 1 4) + x1 a❆1_append(x1) weight: (/ 3 8) a❆1_not(x1) weight: (/ 1 4) + x1 #a❆2_not(x1,x2) weight: (/ 1 2) + x1 + x2 cons() weight: 0 #a(x1,x2) weight: (/ 3 8) + x1 + x2 a❆2_not(x1,x2) weight: (/ 3 8) + x1 filter() weight: 0 #a❆2_filter(x1,x2) weight: x1 + x2 a❆1_not2(x1) weight: (/ 1 2) #a❆2_append(x1,x2) weight: 0 not() weight: 0 Usable rules: { 3 4 8 9 } Removed DPs: #3..7 #10 #16 #18 #19 Number of SCCs: 0, DPs: 0, edges: 0 YES