Input TRS: 1: eq(0(),0()) -> true() 2: eq(0(),s(x)) -> false() 3: eq(s(x),0()) -> false() 4: eq(s(x),s(y)) -> eq(x,y) 5: le(0(),y) -> true() 6: le(s(x),0()) -> false() 7: le(s(x),s(y)) -> le(x,y) 8: app(nil(),y) -> y 9: app(add(n,x),y) -> add(n,app(x,y)) 10: min(add(n,nil())) -> n 11: min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 12: if_min(true(),add(n,add(m,x))) -> min(add(n,x)) 13: if_min(false(),add(n,add(m,x))) -> min(add(m,x)) 14: rm(n,nil()) -> nil() 15: rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 16: if_rm(true(),n,add(m,x)) -> rm(n,x) 17: if_rm(false(),n,add(m,x)) -> add(m,rm(n,x)) 18: minsort(nil(),nil()) -> nil() 19: minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 20: if_minsort(true(),add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil())) 21: if_minsort(false(),add(n,x),y) -> minsort(x,add(n,y)) Number of strict rules: 21 Direct Order(PosReal,>,Poly) ... failed. Freezing min 1: eq(0(),0()) -> true() 2: eq(0(),s(x)) -> false() 3: eq(s(x),0()) -> false() 4: eq(s(x),s(y)) -> eq(x,y) 5: le(0(),y) -> true() 6: le(s(x),0()) -> false() 7: le(s(x),s(y)) -> le(x,y) 8: app(nil(),y) -> y 9: app(add(n,x),y) -> add(n,app(x,y)) 10: min❆1_add(n,nil()) -> n 11: min❆1_add(n,add(m,x)) -> if_min(le(n,m),add(n,add(m,x))) 12: if_min(true(),add(n,add(m,x))) -> min❆1_add(n,x) 13: if_min(false(),add(n,add(m,x))) -> min❆1_add(m,x) 14: rm(n,nil()) -> nil() 15: rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 16: if_rm(true(),n,add(m,x)) -> rm(n,x) 17: if_rm(false(),n,add(m,x)) -> add(m,rm(n,x)) 18: minsort(nil(),nil()) -> nil() 19: minsort(add(n,x),y) -> if_minsort(eq(n,min❆1_add(n,x)),add(n,x),y) 20: if_minsort(true(),add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil())) 21: if_minsort(false(),add(n,x),y) -> minsort(x,add(n,y)) 22: min(add(_1,_2)) ->= min❆1_add(_1,_2) Number of strict rules: 21 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #if_min(false(),add(n,add(m,x))) -> #min❆1_add(m,x) #2: #app(add(n,x),y) -> #app(x,y) #3: #min❆1_add(n,add(m,x)) -> #if_min(le(n,m),add(n,add(m,x))) #4: #min❆1_add(n,add(m,x)) -> #le(n,m) #5: #if_min(true(),add(n,add(m,x))) -> #min❆1_add(n,x) #6: #if_minsort(true(),add(n,x),y) -> #minsort(app(rm(n,x),y),nil()) #7: #if_minsort(true(),add(n,x),y) -> #app(rm(n,x),y) #8: #if_minsort(true(),add(n,x),y) -> #rm(n,x) #9: #le(s(x),s(y)) -> #le(x,y) #10: #min(add(_1,_2)) ->? #min❆1_add(_1,_2) #11: #if_rm(false(),n,add(m,x)) -> #rm(n,x) #12: #minsort(add(n,x),y) -> #if_minsort(eq(n,min❆1_add(n,x)),add(n,x),y) #13: #minsort(add(n,x),y) -> #eq(n,min❆1_add(n,x)) #14: #minsort(add(n,x),y) -> #min❆1_add(n,x) #15: #if_minsort(false(),add(n,x),y) -> #minsort(x,add(n,y)) #16: #if_rm(true(),n,add(m,x)) -> #rm(n,x) #17: #rm(n,add(m,x)) -> #if_rm(eq(n,m),n,add(m,x)) #18: #rm(n,add(m,x)) -> #eq(n,m) #19: #eq(s(x),s(y)) -> #eq(x,y) Number of SCCs: 6, DPs: 12, edges: 15 SCC { #2 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 if_rm(x1,x2,x3) weight: 0 s(x1) weight: 0 #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: 0 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: 0 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: x1 #if_minsort(x1,x2,x3) weight: 0 min(x1) weight: 0 #minsort(x1,x2) weight: 0 add(x1,x2) weight: (/ 1 2) + x2 if_min(x1,x2) weight: 0 if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: 0 app(x1,x2) weight: 0 Usable rules: { } Removed DPs: #2 Number of SCCs: 5, DPs: 11, edges: 14 SCC { #9 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 if_rm(x1,x2,x3) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: x2 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: 0 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: 0 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: 0 min(x1) weight: 0 #minsort(x1,x2) weight: 0 add(x1,x2) weight: (/ 1 2) if_min(x1,x2) weight: 0 if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: 0 app(x1,x2) weight: 0 Usable rules: { } Removed DPs: #9 Number of SCCs: 4, DPs: 10, edges: 13 SCC { #19 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 if_rm(x1,x2,x3) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: 0 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: x2 min❆1_add(x1,x2) weight: 0 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: 0 min(x1) weight: 0 #minsort(x1,x2) weight: 0 add(x1,x2) weight: (/ 1 2) if_min(x1,x2) weight: 0 if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: 0 app(x1,x2) weight: 0 Usable rules: { } Removed DPs: #19 Number of SCCs: 3, DPs: 9, edges: 12 SCC { #11 #16 #17 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 if_rm(x1,x2,x3) weight: 0 s(x1) weight: (/ 1 4) #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: x3 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: (/ 1 4) + x1 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: 0 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: 0 min(x1) weight: 0 #minsort(x1,x2) weight: 0 add(x1,x2) weight: (/ 1 2) + x1 + x2 if_min(x1,x2) weight: 0 if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: (/ 1 4) + x2 app(x1,x2) weight: 0 Usable rules: { } Removed DPs: #11 #16 #17 Number of SCCs: 2, DPs: 6, edges: 8 SCC { #1 #3 #5 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: (/ 1 8) if_rm(x1,x2,x3) weight: 0 s(x1) weight: (/ 1 8) #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: x2 eq(x1,x2) weight: (/ 1 8) + x1 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: 0 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: 0 min(x1) weight: 0 #minsort(x1,x2) weight: 0 add(x1,x2) weight: (/ 1 4) + x2 if_min(x1,x2) weight: 0 if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: (/ 3 8) + x2 rm(x1,x2) weight: 0 #rm(x1,x2) weight: (/ 1 8) app(x1,x2) weight: 0 Usable rules: { } Removed DPs: #1 #3 #5 Number of SCCs: 1, DPs: 3, edges: 4 SCC { #6 #12 #15 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: (/ 1 8) if_rm(x1,x2,x3) weight: x3 s(x1) weight: (/ 1 8) #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: (/ 1 8) + x1 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: (/ 1 8) 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: x2 + x3 min(x1) weight: 0 #minsort(x1,x2) weight: x1 + x2 add(x1,x2) weight: (/ 1 4) + x1 + x2 if_min(x1,x2) weight: (/ 1 4) if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: (/ 3 8) rm(x1,x2) weight: x2 #rm(x1,x2) weight: (/ 1 8) app(x1,x2) weight: (/ 1 8) + x1 + x2 Usable rules: { 8 9 14..17 } Removed DPs: #6 Number of SCCs: 1, DPs: 2, edges: 2 SCC { #12 #15 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: (/ 1 8) if_rm(x1,x2,x3) weight: x3 s(x1) weight: (/ 1 8) #le(x1,x2) weight: 0 #if_rm(x1,x2,x3) weight: 0 #if_min(x1,x2) weight: 0 eq(x1,x2) weight: (/ 1 8) + x1 false() weight: 0 #min(x1) weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 min❆1_add(x1,x2) weight: (/ 1 8) 0() weight: 0 nil() weight: 0 #app(x1,x2) weight: 0 #if_minsort(x1,x2,x3) weight: x2 min(x1) weight: 0 #minsort(x1,x2) weight: (/ 1 8) + x1 add(x1,x2) weight: (/ 1 4) + x1 + x2 if_min(x1,x2) weight: (/ 1 4) if_minsort(x1,x2,x3) weight: 0 minsort(x1,x2) weight: 0 #min❆1_add(x1,x2) weight: (/ 3 8) rm(x1,x2) weight: x2 #rm(x1,x2) weight: (/ 1 8) app(x1,x2) weight: (/ 1 8) + x1 + x2 Usable rules: { } Removed DPs: #12 #15 Number of SCCs: 0, DPs: 0, edges: 0 YES