YES Problem: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) Proof: DP Processor: DPs: find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) complete#(u,cons(v,S),E) -> complete#(u,S,E) complete#(u,cons(v,S),E) -> find#(u,v,E) complete#(u,cons(v,S),E) -> ite#(find(u,v,E),complete(u,S,E),ff()) clique#(cons(u,K),E) -> clique#(K,E) clique#(cons(u,K),E) -> complete#(u,K,E) clique#(cons(u,K),E) -> ite#(complete(u,K,E),clique(K,E),ff()) choice#(nil(),K,E) -> clique#(K,E) choice#(nil(),K,E) -> ite#(clique(K,E),K,nil()) choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) choice#(cons(u,S),K,E) -> choice#(S,K,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) TDG Processor: DPs: find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) complete#(u,cons(v,S),E) -> complete#(u,S,E) complete#(u,cons(v,S),E) -> find#(u,v,E) complete#(u,cons(v,S),E) -> ite#(find(u,v,E),complete(u,S,E),ff()) clique#(cons(u,K),E) -> clique#(K,E) clique#(cons(u,K),E) -> complete#(u,K,E) clique#(cons(u,K),E) -> ite#(complete(u,K,E),clique(K,E),ff()) choice#(nil(),K,E) -> clique#(K,E) choice#(nil(),K,E) -> ite#(clique(K,E),K,nil()) choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) choice#(cons(u,S),K,E) -> choice#(S,K,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) graph: choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) -> choice#(cons(u,S),K,E) -> choice#(S,K,E) choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) -> choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) -> choice#(nil(),K,E) -> ite#(clique(K,E),K,nil()) choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) -> choice#(nil(),K,E) -> clique#(K,E) choice#(cons(u,S),K,E) -> choice#(S,K,E) -> choice#(cons(u,S),K,E) -> choice#(S,K,E) choice#(cons(u,S),K,E) -> choice#(S,K,E) -> choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) choice#(cons(u,S),K,E) -> choice#(S,K,E) -> choice#(nil(),K,E) -> ite#(clique(K,E),K,nil()) choice#(cons(u,S),K,E) -> choice#(S,K,E) -> choice#(nil(),K,E) -> clique#(K,E) choice#(nil(),K,E) -> clique#(K,E) -> clique#(cons(u,K),E) -> ite#(complete(u,K,E),clique(K,E),ff()) choice#(nil(),K,E) -> clique#(K,E) -> clique#(cons(u,K),E) -> complete#(u,K,E) choice#(nil(),K,E) -> clique#(K,E) -> clique#(cons(u,K),E) -> clique#(K,E) clique#(cons(u,K),E) -> clique#(K,E) -> clique#(cons(u,K),E) -> ite#(complete(u,K,E),clique(K,E),ff()) clique#(cons(u,K),E) -> clique#(K,E) -> clique#(cons(u,K),E) -> complete#(u,K,E) clique#(cons(u,K),E) -> clique#(K,E) -> clique#(cons(u,K),E) -> clique#(K,E) clique#(cons(u,K),E) -> complete#(u,K,E) -> complete#(u,cons(v,S),E) -> ite#(find(u,v,E),complete(u,S,E),ff()) clique#(cons(u,K),E) -> complete#(u,K,E) -> complete#(u,cons(v,S),E) -> find#(u,v,E) clique#(cons(u,K),E) -> complete#(u,K,E) -> complete#(u,cons(v,S),E) -> complete#(u,S,E) complete#(u,cons(v,S),E) -> complete#(u,S,E) -> complete#(u,cons(v,S),E) -> ite#(find(u,v,E),complete(u,S,E),ff()) complete#(u,cons(v,S),E) -> complete#(u,S,E) -> complete#(u,cons(v,S),E) -> find#(u,v,E) complete#(u,cons(v,S),E) -> complete#(u,S,E) -> complete#(u,cons(v,S),E) -> complete#(u,S,E) complete#(u,cons(v,S),E) -> find#(u,v,E) -> find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) -> find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) SCC Processor: #sccs: 4 #rules: 5 #arcs: 22/121 DPs: choice#(cons(u,S),K,E) -> choice#(S,cons(u,K),E) choice#(cons(u,S),K,E) -> choice#(S,K,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) KBO Processor: argument filtering: pi(tt) = [] pi(ite) = [1,2] pi(ff) = [] pi(nil) = [] pi(find) = [0,2] pi(cons) = [1] pi(complete) = [0,1] pi(clique) = [0] pi(choice) = [0,1] pi(choice#) = 0 weight function: w0 = 1 w(choice#) = w(clique) = w(complete) = w(cons) = w(find) = w(nil) = w( ff) = w(tt) = 1 w(choice) = w(ite) = 0 precedence: choice# ~ choice ~ clique ~ complete ~ cons ~ find ~ nil ~ ff ~ tt > ite problem: DPs: TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) Qed DPs: clique#(cons(u,K),E) -> clique#(K,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) KBO Processor: argument filtering: pi(tt) = [] pi(ite) = [1,2] pi(ff) = [] pi(nil) = [] pi(find) = 2 pi(cons) = [0,1] pi(complete) = 1 pi(clique) = 0 pi(choice) = [0,1] pi(clique#) = 0 weight function: w0 = 1 w(clique#) = w(choice) = w(complete) = w(find) = w(nil) = w(ff) = w( tt) = 1 w(clique) = w(cons) = w(ite) = 0 precedence: clique# ~ choice ~ cons ~ find > nil > clique ~ complete ~ ff ~ ite ~ tt problem: DPs: TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) Qed DPs: complete#(u,cons(v,S),E) -> complete#(u,S,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) KBO Processor: argument filtering: pi(tt) = [] pi(ite) = [1,2] pi(ff) = [] pi(nil) = [] pi(find) = [0] pi(cons) = [1] pi(complete) = 1 pi(clique) = 0 pi(choice) = [0,1] pi(complete#) = 1 weight function: w0 = 1 w(complete#) = w(cons) = w(find) = w(nil) = w(ff) = w(tt) = 1 w(choice) = w(clique) = w(complete) = w(ite) = 0 precedence: complete > complete# ~ choice ~ cons > nil > clique ~ find ~ ff ~ ite ~ tt problem: DPs: TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) Qed DPs: find#(u,v,cons(cons(u2,v2),E)) -> find#(u,v,E) TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) KBO Processor: argument filtering: pi(tt) = [] pi(ite) = [1,2] pi(ff) = [] pi(nil) = [] pi(find) = 2 pi(cons) = [0,1] pi(complete) = 1 pi(clique) = [0,1] pi(choice) = [0,1] pi(find#) = 2 weight function: w0 = 1 w(find#) = w(clique) = w(find) = w(nil) = w(ff) = w(tt) = 1 w(choice) = w(complete) = w(cons) = w(ite) = 0 precedence: find# ~ cons ~ nil > choice ~ clique > complete ~ find ~ ff ~ ite ~ tt problem: DPs: TRS: ite(tt(),u,v) -> u ite(ff(),u,v) -> v find(u,v,nil()) -> ff() find(u,v,cons(cons(u,v),E)) -> tt() find(u,v,cons(cons(u2,v2),E)) -> find(u,v,E) complete(u,nil(),E) -> tt() complete(u,cons(v,S),E) -> ite(find(u,v,E),complete(u,S,E),ff()) clique(nil(),E) -> tt() clique(cons(u,K),E) -> ite(complete(u,K,E),clique(K,E),ff()) choice(nil(),K,E) -> ite(clique(K,E),K,nil()) choice(cons(u,S),K,E) -> choice(S,cons(u,K),E) choice(cons(u,S),K,E) -> choice(S,K,E) Qed