MAYBE Problem: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) Proof: DP Processor: DPs: f#(true(),x,y) -> double#(y) f#(true(),x,y) -> plus#(s(0()),x) f#(true(),x,y) -> gt#(y,s(s(0()))) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> and#(gt(x,y),gt(y,s(s(0())))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt#(s(u),s(v)) -> gt#(u,v) plus#(n,s(m)) -> plus#(n,m) plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) double#(s(x)) -> double#(x) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) TDG Processor: DPs: f#(true(),x,y) -> double#(y) f#(true(),x,y) -> plus#(s(0()),x) f#(true(),x,y) -> gt#(y,s(s(0()))) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> and#(gt(x,y),gt(y,s(s(0())))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt#(s(u),s(v)) -> gt#(u,v) plus#(n,s(m)) -> plus#(n,m) plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) double#(s(x)) -> double#(x) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) graph: gt#(s(u),s(v)) -> gt#(u,v) -> gt#(s(u),s(v)) -> gt#(u,v) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(n,s(m)) -> plus#(n,m) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) -> plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) -> plus#(n,s(m)) -> plus#(n,m) plus#(n,s(m)) -> plus#(n,m) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) plus#(n,s(m)) -> plus#(n,m) -> plus#(plus(n,m),u) -> plus#(m,u) plus#(n,s(m)) -> plus#(n,m) -> plus#(n,s(m)) -> plus#(n,m) double#(s(x)) -> double#(x) -> double#(s(x)) -> double#(x) f#(true(),x,y) -> gt#(y,s(s(0()))) -> gt#(s(u),s(v)) -> gt#(u,v) f#(true(),x,y) -> gt#(x,y) -> gt#(s(u),s(v)) -> gt#(u,v) f#(true(),x,y) -> plus#(s(0()),x) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) f#(true(),x,y) -> plus#(s(0()),x) -> plus#(plus(n,m),u) -> plus#(m,u) f#(true(),x,y) -> plus#(s(0()),x) -> plus#(n,s(m)) -> plus#(n,m) f#(true(),x,y) -> double#(y) -> double#(s(x)) -> double#(x) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> and#(gt(x,y),gt(y,s(s(0())))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> gt#(y,s(s(0()))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> plus#(s(0()),x) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> double#(y) EDG Processor: DPs: f#(true(),x,y) -> double#(y) f#(true(),x,y) -> plus#(s(0()),x) f#(true(),x,y) -> gt#(y,s(s(0()))) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> and#(gt(x,y),gt(y,s(s(0())))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt#(s(u),s(v)) -> gt#(u,v) plus#(n,s(m)) -> plus#(n,m) plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) double#(s(x)) -> double#(x) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) graph: gt#(s(u),s(v)) -> gt#(u,v) -> gt#(s(u),s(v)) -> gt#(u,v) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(n,s(m)) -> plus#(n,m) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(m,u) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) -> plus#(n,s(m)) -> plus#(n,m) plus#(n,s(m)) -> plus#(n,m) -> plus#(n,s(m)) -> plus#(n,m) plus#(n,s(m)) -> plus#(n,m) -> plus#(plus(n,m),u) -> plus#(m,u) plus#(n,s(m)) -> plus#(n,m) -> plus#(plus(n,m),u) -> plus#(n,plus(m,u)) double#(s(x)) -> double#(x) -> double#(s(x)) -> double#(x) f#(true(),x,y) -> gt#(y,s(s(0()))) -> gt#(s(u),s(v)) -> gt#(u,v) f#(true(),x,y) -> gt#(x,y) -> gt#(s(u),s(v)) -> gt#(u,v) f#(true(),x,y) -> plus#(s(0()),x) -> plus#(n,s(m)) -> plus#(n,m) f#(true(),x,y) -> double#(y) -> double#(s(x)) -> double#(x) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> double#(y) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> plus#(s(0()),x) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> gt#(y,s(s(0()))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> and#(gt(x,y),gt(y,s(s(0())))) f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) -> f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) SCC Processor: #sccs: 4 #rules: 6 #arcs: 19/121 DPs: f#(true(),x,y) -> f#(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) Open DPs: double#(s(x)) -> double#(x) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) Open DPs: plus#(plus(n,m),u) -> plus#(m,u) plus#(plus(n,m),u) -> plus#(n,plus(m,u)) plus#(n,s(m)) -> plus#(n,m) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) Open DPs: gt#(s(u),s(v)) -> gt#(u,v) TRS: f(true(),x,y) -> f(and(gt(x,y),gt(y,s(s(0())))),plus(s(0()),x),double(y)) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) and(x,true()) -> x and(x,false()) -> false() plus(n,0()) -> n plus(n,s(m)) -> s(plus(n,m)) plus(plus(n,m),u) -> plus(n,plus(m,u)) double(0()) -> 0() double(s(x)) -> s(s(double(x))) Open