Input TRS: 1: le(0(),y) -> true() 2: le(s(x),0()) -> false() 3: le(s(x),s(y)) -> le(x,y) 4: eq(0(),0()) -> true() 5: eq(0(),s(y)) -> false() 6: eq(s(x),0()) -> false() 7: eq(s(x),s(y)) -> eq(x,y) 8: minsort(nil()) -> nil() 9: minsort(cons(x,xs)) -> cons(min(cons(x,xs)),minsort(rm(min(cons(x,xs)),cons(x,xs)))) 10: min(nil()) -> 0() 11: min(cons(x,nil())) -> x 12: min(cons(x,cons(y,xs))) -> if1(le(x,y),x,y,xs) 13: if1(true(),x,y,xs) -> min(cons(x,xs)) 14: if1(false(),x,y,xs) -> min(cons(y,xs)) 15: rm(x,nil()) -> nil() 16: rm(x,cons(y,xs)) -> if2(eq(x,y),x,y,xs) 17: if2(true(),x,y,xs) -> rm(x,xs) 18: if2(false(),x,y,xs) -> cons(y,rm(x,xs)) Number of strict rules: 18 Direct Order(PosReal,>,Poly) ... failed. Freezing min 1: le(0(),y) -> true() 2: le(s(x),0()) -> false() 3: le(s(x),s(y)) -> le(x,y) 4: eq(0(),0()) -> true() 5: eq(0(),s(y)) -> false() 6: eq(s(x),0()) -> false() 7: eq(s(x),s(y)) -> eq(x,y) 8: minsort(nil()) -> nil() 9: minsort(cons(x,xs)) -> cons(min❆1_cons(x,xs),minsort(rm(min❆1_cons(x,xs),cons(x,xs)))) 10: min❆1_nil() -> 0() 11: min❆1_cons(x,nil()) -> x 12: min❆1_cons(x,cons(y,xs)) -> if1(le(x,y),x,y,xs) 13: if1(true(),x,y,xs) -> min❆1_cons(x,xs) 14: if1(false(),x,y,xs) -> min❆1_cons(y,xs) 15: rm(x,nil()) -> nil() 16: rm(x,cons(y,xs)) -> if2(eq(x,y),x,y,xs) 17: if2(true(),x,y,xs) -> rm(x,xs) 18: if2(false(),x,y,xs) -> cons(y,rm(x,xs)) 19: min(cons(_1,_2)) ->= min❆1_cons(_1,_2) 20: min(nil()) ->= min❆1_nil() Number of strict rules: 18 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #if1(true(),x,y,xs) -> #min❆1_cons(x,xs) #2: #minsort(cons(x,xs)) -> #min❆1_cons(x,xs) #3: #minsort(cons(x,xs)) -> #minsort(rm(min❆1_cons(x,xs),cons(x,xs))) #4: #minsort(cons(x,xs)) -> #rm(min❆1_cons(x,xs),cons(x,xs)) #5: #minsort(cons(x,xs)) -> #min❆1_cons(x,xs) #6: #min❆1_cons(x,cons(y,xs)) -> #if1(le(x,y),x,y,xs) #7: #min❆1_cons(x,cons(y,xs)) -> #le(x,y) #8: #if1(false(),x,y,xs) -> #min❆1_cons(y,xs) #9: #min(nil()) ->? #min❆1_nil() #10: #eq(s(x),s(y)) -> #eq(x,y) #11: #if2(true(),x,y,xs) -> #rm(x,xs) #12: #min(cons(_1,_2)) ->? #min❆1_cons(_1,_2) #13: #rm(x,cons(y,xs)) -> #if2(eq(x,y),x,y,xs) #14: #rm(x,cons(y,xs)) -> #eq(x,y) #15: #le(s(x),s(y)) -> #le(x,y) #16: #if2(false(),x,y,xs) -> #rm(x,xs) Number of SCCs: 5, DPs: 9, edges: 11 SCC { #15 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: x2 eq(x1,x2) weight: 0 if1(x1,x2,x3,x4) weight: 0 false() weight: 0 #min(x1) weight: 0 min❆1_cons(x1,x2) weight: 0 #min❆1_nil() weight: 0 true() weight: 0 #eq(x1,x2) weight: 0 #if1(x1,x2,x3,x4) weight: 0 if2(x1,x2,x3,x4) weight: 0 0() weight: 0 nil() weight: 0 min❆1_nil() weight: 0 min(x1) weight: 0 #min❆1_cons(x1,x2) weight: 0 cons(x1,x2) weight: 0 #minsort(x1) weight: 0 minsort(x1) weight: 0 #if2(x1,x2,x3,x4) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: 0 Usable rules: { } Removed DPs: #15 Number of SCCs: 4, DPs: 8, edges: 10 SCC { #10 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 eq(x1,x2) weight: 0 if1(x1,x2,x3,x4) weight: 0 false() weight: 0 #min(x1) weight: 0 min❆1_cons(x1,x2) weight: 0 #min❆1_nil() weight: 0 true() weight: 0 #eq(x1,x2) weight: x2 #if1(x1,x2,x3,x4) weight: 0 if2(x1,x2,x3,x4) weight: 0 0() weight: 0 nil() weight: 0 min❆1_nil() weight: 0 min(x1) weight: 0 #min❆1_cons(x1,x2) weight: 0 cons(x1,x2) weight: 0 #minsort(x1) weight: 0 minsort(x1) weight: 0 #if2(x1,x2,x3,x4) weight: 0 rm(x1,x2) weight: 0 #rm(x1,x2) weight: 0 Usable rules: { } Removed DPs: #10 Number of SCCs: 3, DPs: 7, edges: 9 SCC { #3 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... Order(PosReal,>,Sum-Sum; NegReal,≥,Sum)... Order(PosReal,>,MaxSum-Sum; NegReal,≥,Sum)... failed. Removing edges: failed. Finding a loop... failed. MAYBE