MAYBE Problem: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() Proof: DP Processor: DPs: cond1#(true(),x,y,z) -> gr#(y,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) cond2#(true(),x,y,z) -> p#(y) cond2#(true(),x,y,z) -> p#(x) cond2#(true(),x,y,z) -> gr#(y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) cond2#(false(),x,y,z) -> gr#(x,z) cond2#(false(),x,y,z) -> eq#(x,y) cond2#(false(),x,y,z) -> and#(eq(x,y),gr(x,z)) cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) gr#(s(x),s(y)) -> gr#(x,y) eq#(s(x),s(y)) -> eq#(x,y) TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() TDG Processor: DPs: cond1#(true(),x,y,z) -> gr#(y,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) cond2#(true(),x,y,z) -> p#(y) cond2#(true(),x,y,z) -> p#(x) cond2#(true(),x,y,z) -> gr#(y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) cond2#(false(),x,y,z) -> gr#(x,z) cond2#(false(),x,y,z) -> eq#(x,y) cond2#(false(),x,y,z) -> and#(eq(x,y),gr(x,z)) cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) gr#(s(x),s(y)) -> gr#(x,y) eq#(s(x),s(y)) -> eq#(x,y) TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() graph: eq#(s(x),s(y)) -> eq#(x,y) -> eq#(s(x),s(y)) -> eq#(x,y) cond2#(false(),x,y,z) -> eq#(x,y) -> eq#(s(x),s(y)) -> eq#(x,y) cond2#(false(),x,y,z) -> gr#(x,z) -> gr#(s(x),s(y)) -> gr#(x,y) cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) -> cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) -> cond1#(true(),x,y,z) -> gr#(y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(false(),x,y,z) -> and#(eq(x,y),gr(x,z)) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(false(),x,y,z) -> eq#(x,y) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(false(),x,y,z) -> gr#(x,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(true(),x,y,z) -> gr#(y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(true(),x,y,z) -> p#(x) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) -> cond2#(true(),x,y,z) -> p#(y) cond2#(true(),x,y,z) -> gr#(y,z) -> gr#(s(x),s(y)) -> gr#(x,y) gr#(s(x),s(y)) -> gr#(x,y) -> gr#(s(x),s(y)) -> gr#(x,y) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(false(),x,y,z) -> and#(eq(x,y),gr(x,z)) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(false(),x,y,z) -> eq#(x,y) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(false(),x,y,z) -> gr#(x,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(true(),x,y,z) -> gr#(y,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(true(),x,y,z) -> p#(x) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) -> cond2#(true(),x,y,z) -> p#(y) cond1#(true(),x,y,z) -> gr#(y,z) -> gr#(s(x),s(y)) -> gr#(x,y) SCC Processor: #sccs: 3 #rules: 5 #arcs: 24/144 DPs: cond2#(false(),x,y,z) -> cond1#(and(eq(x,y),gr(x,z)),x,y,z) cond1#(true(),x,y,z) -> cond2#(gr(y,z),x,y,z) cond2#(true(),x,y,z) -> cond2#(gr(y,z),p(x),p(y),z) TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() Open DPs: gr#(s(x),s(y)) -> gr#(x,y) TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() KBO Processor: argument filtering: pi(true) = [] pi(cond1) = 3 pi(gr) = 0 pi(cond2) = 3 pi(p) = [0] pi(false) = [] pi(eq) = [] pi(and) = [] pi(0) = [] pi(s) = [0] pi(gr#) = 0 weight function: w0 = 1 w(gr#) = w(s) = w(0) = w(and) = w(eq) = w(false) = w(cond2) = w( gr) = w(true) = 1 w(p) = w(cond1) = 0 precedence: gr# ~ and ~ p > 0 ~ eq > s ~ false ~ cond2 ~ gr ~ cond1 ~ true problem: DPs: TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() Qed DPs: eq#(s(x),s(y)) -> eq#(x,y) TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() KBO Processor: argument filtering: pi(true) = [] pi(cond1) = 3 pi(gr) = 0 pi(cond2) = 3 pi(p) = [0] pi(false) = [] pi(eq) = [] pi(and) = [] pi(0) = [] pi(s) = [0] pi(eq#) = 0 weight function: w0 = 1 w(eq#) = w(s) = w(0) = w(and) = w(eq) = w(false) = w(cond2) = w( gr) = w(true) = 1 w(p) = w(cond1) = 0 precedence: eq# ~ and ~ p > 0 ~ eq > s ~ false ~ cond2 ~ gr ~ cond1 ~ true problem: DPs: TRS: cond1(true(),x,y,z) -> cond2(gr(y,z),x,y,z) cond2(true(),x,y,z) -> cond2(gr(y,z),p(x),p(y),z) cond2(false(),x,y,z) -> cond1(and(eq(x,y),gr(x,z)),x,y,z) gr(0(),x) -> false() gr(s(x),0()) -> true() gr(s(x),s(y)) -> gr(x,y) p(0()) -> 0() p(s(x)) -> x eq(0(),0()) -> true() eq(s(x),0()) -> false() eq(0(),s(x)) -> false() eq(s(x),s(y)) -> eq(x,y) and(true(),true()) -> true() and(false(),x) -> false() and(x,false()) -> false() Qed