MAYBE Problem: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() Proof: DP Processor: DPs: le#(s(x),s(y)) -> le#(x,y) int#(x,y) -> le#(x,y) int#(x,y) -> if#(le(x,y),x,y) if#(true(),x,y) -> int#(s(x),y) TRS: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() TDG Processor: DPs: le#(s(x),s(y)) -> le#(x,y) int#(x,y) -> le#(x,y) int#(x,y) -> if#(le(x,y),x,y) if#(true(),x,y) -> int#(s(x),y) TRS: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() graph: if#(true(),x,y) -> int#(s(x),y) -> int#(x,y) -> if#(le(x,y),x,y) if#(true(),x,y) -> int#(s(x),y) -> int#(x,y) -> le#(x,y) int#(x,y) -> if#(le(x,y),x,y) -> if#(true(),x,y) -> int#(s(x),y) int#(x,y) -> le#(x,y) -> le#(s(x),s(y)) -> le#(x,y) le#(s(x),s(y)) -> le#(x,y) -> le#(s(x),s(y)) -> le#(x,y) SCC Processor: #sccs: 2 #rules: 3 #arcs: 5/16 DPs: if#(true(),x,y) -> int#(s(x),y) int#(x,y) -> if#(le(x,y),x,y) TRS: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() Open DPs: le#(s(x),s(y)) -> le#(x,y) TRS: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() Arctic Interpretation Processor: dimension: 1 interpretation: [le#](x0, x1) = 1x0, [nil] = 1, [cons](x0, x1) = -11x0 + -9x1 + 8, [if](x0, x1, x2) = -7x1 + 2x2 + 10, [int](x0, x1) = x0 + 9x1 + 12, [false] = 2, [s](x0) = 1x0 + -1, [true] = 0, [le](x0, x1) = -5x0 + 1x1 + -5, [0] = 6 orientation: le#(s(x),s(y)) = 2x + 0 >= 1x = le#(x,y) le(0(),y) = 1y + 1 >= 0 = true() le(s(x),0()) = -4x + 7 >= 2 = false() le(s(x),s(y)) = -4x + 2y + 0 >= -5x + 1y + -5 = le(x,y) int(x,y) = x + 9y + 12 >= -7x + 2y + 10 = if(le(x,y),x,y) if(true(),x,y) = -7x + 2y + 10 >= -8x + y + 8 = cons(x,int(s(x),y)) if(false(),x,y) = -7x + 2y + 10 >= 1 = nil() problem: DPs: TRS: le(0(),y) -> true() le(s(x),0()) -> false() le(s(x),s(y)) -> le(x,y) int(x,y) -> if(le(x,y),x,y) if(true(),x,y) -> cons(x,int(s(x),y)) if(false(),x,y) -> nil() Qed