YES Problem: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x Proof: DP Processor: DPs: cond#(true(),x,y) -> p#(x) cond#(true(),x,y) -> gr#(x,y) cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) gr#(s(x),s(y)) -> gr#(x,y) TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x TDG Processor: DPs: cond#(true(),x,y) -> p#(x) cond#(true(),x,y) -> gr#(x,y) cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) gr#(s(x),s(y)) -> gr#(x,y) TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x graph: gr#(s(x),s(y)) -> gr#(x,y) -> gr#(s(x),s(y)) -> gr#(x,y) cond#(true(),x,y) -> gr#(x,y) -> gr#(s(x),s(y)) -> gr#(x,y) cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) -> cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) -> cond#(true(),x,y) -> gr#(x,y) cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) -> cond#(true(),x,y) -> p#(x) SCC Processor: #sccs: 2 #rules: 2 #arcs: 5/16 DPs: cond#(true(),x,y) -> cond#(gr(x,y),p(x),y) TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x Arctic Interpretation Processor: dimension: 1 interpretation: [cond#](x0, x1, x2) = x0 + -2x1 + 0, [s](x0) = 7x0 + 12, [false] = 1, [0] = 0, [p](x0) = -6x0 + 1, [gr](x0, x1) = -8x0 + 2, [cond](x0, x1, x2) = 2x0 + 3x1 + 0, [true] = 3 orientation: cond#(true(),x,y) = -2x + 3 >= -8x + 2 = cond#(gr(x,y),p(x),y) cond(true(),x,y) = 3x + 5 >= -3x + 4 = cond(gr(x,y),p(x),y) gr(0(),x) = 2 >= 1 = false() gr(s(x),0()) = -1x + 4 >= 3 = true() gr(s(x),s(y)) = -1x + 4 >= -8x + 2 = gr(x,y) p(0()) = 1 >= 0 = 0() p(s(x)) = 1x + 6 >= x = x problem: DPs: TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x Qed DPs: gr#(s(x),s(y)) -> gr#(x,y) TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x KBO Processor: argument filtering: pi(true) = [] pi(cond) = 2 pi(gr) = 0 pi(p) = [0] pi(0) = [] pi(false) = [] pi(s) = [0] pi(gr#) = 1 weight function: w0 = 1 w(gr#) = w(s) = w(false) = w(0) = w(gr) = w(cond) = w(true) = 1 w(p) = 0 precedence: gr# ~ s ~ p ~ true > 0 > false ~ gr ~ cond problem: DPs: TRS: cond(true(),x,y) -> cond(gr(x,y),p(x),y) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x Qed