YES Problem: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Proof: DP Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -#(0(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -#(1(x),1(y)) -> 0#(-(x,y)) ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) log#(x) -> log'#(x) log#(x) -> -#(log'(x),1(#())) log'#(1(x)) -> log'#(x) log'#(1(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> log'#(x) log'#(0(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> ge#(x,1(#())) log'#(0(x)) -> if#(ge(x,1(#())),+(log'(x),1(#())),#()) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) TDG Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -#(0(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -#(1(x),1(y)) -> 0#(-(x,y)) ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) log#(x) -> log'#(x) log#(x) -> -#(log'(x),1(#())) log'#(1(x)) -> log'#(x) log'#(1(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> log'#(x) log'#(0(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> ge#(x,1(#())) log'#(0(x)) -> if#(ge(x,1(#())),+(log'(x),1(#())),#()) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) graph: log'#(1(x)) -> log'#(x) -> log'#(0(x)) -> if#(ge(x,1(#())),+(log'(x),1(#())),#()) log'#(1(x)) -> log'#(x) -> log'#(0(x)) -> ge#(x,1(#())) log'#(1(x)) -> log'#(x) -> log'#(0(x)) -> +#(log'(x),1(#())) log'#(1(x)) -> log'#(x) -> log'#(0(x)) -> log'#(x) log'#(1(x)) -> log'#(x) -> log'#(1(x)) -> +#(log'(x),1(#())) log'#(1(x)) -> log'#(x) -> log'#(1(x)) -> log'#(x) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(+(x,y),z) -> +#(y,z) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> +#(x,y) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(1(x),0(y)) -> +#(x,y) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(0(x),1(y)) -> +#(x,y) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(0(x),0(y)) -> 0#(+(x,y)) log'#(1(x)) -> +#(log'(x),1(#())) -> +#(0(x),0(y)) -> +#(x,y) log'#(0(x)) -> log'#(x) -> log'#(0(x)) -> if#(ge(x,1(#())),+(log'(x),1(#())),#()) log'#(0(x)) -> log'#(x) -> log'#(0(x)) -> ge#(x,1(#())) log'#(0(x)) -> log'#(x) -> log'#(0(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> log'#(x) -> log'#(0(x)) -> log'#(x) log'#(0(x)) -> log'#(x) -> log'#(1(x)) -> +#(log'(x),1(#())) log'#(0(x)) -> log'#(x) -> log'#(1(x)) -> log'#(x) log'#(0(x)) -> ge#(x,1(#())) -> ge#(#(),0(x)) -> ge#(#(),x) log'#(0(x)) -> ge#(x,1(#())) -> ge#(1(x),1(y)) -> ge#(x,y) log'#(0(x)) -> ge#(x,1(#())) -> ge#(1(x),0(y)) -> ge#(x,y) log'#(0(x)) -> ge#(x,1(#())) -> ge#(0(x),1(y)) -> not#(ge(y,x)) log'#(0(x)) -> ge#(x,1(#())) -> ge#(0(x),1(y)) -> ge#(y,x) log'#(0(x)) -> ge#(x,1(#())) -> ge#(0(x),0(y)) -> ge#(x,y) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(+(x,y),z) -> +#(y,z) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(1(x),1(y)) -> +#(x,y) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(1(x),0(y)) -> +#(x,y) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(0(x),1(y)) -> +#(x,y) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(0(x),0(y)) -> 0#(+(x,y)) log'#(0(x)) -> +#(log'(x),1(#())) -> +#(0(x),0(y)) -> +#(x,y) log#(x) -> log'#(x) -> log'#(0(x)) -> if#(ge(x,1(#())),+(log'(x),1(#())),#()) log#(x) -> log'#(x) -> log'#(0(x)) -> ge#(x,1(#())) log#(x) -> log'#(x) -> log'#(0(x)) -> +#(log'(x),1(#())) log#(x) -> log'#(x) -> log'#(0(x)) -> log'#(x) log#(x) -> log'#(x) -> log'#(1(x)) -> +#(log'(x),1(#())) log#(x) -> log'#(x) -> log'#(1(x)) -> log'#(x) log#(x) -> -#(log'(x),1(#())) -> -#(1(x),1(y)) -> 0#(-(x,y)) log#(x) -> -#(log'(x),1(#())) -> -#(1(x),1(y)) -> -#(x,y) log#(x) -> -#(log'(x),1(#())) -> -#(1(x),0(y)) -> -#(x,y) log#(x) -> -#(log'(x),1(#())) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) log#(x) -> -#(log'(x),1(#())) -> -#(0(x),1(y)) -> -#(x,y) log#(x) -> -#(log'(x),1(#())) -> -#(0(x),0(y)) -> 0#(-(x,y)) log#(x) -> -#(log'(x),1(#())) -> -#(0(x),0(y)) -> -#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(0(x),1(y)) -> not#(ge(y,x)) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(0(x),0(y)) -> ge#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> 0#(-(x,y)) -#(1(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> 0#(-(x,y)) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> 0#(-(x,y)) -#(1(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> 0#(-(x,y)) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(1(x),1(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(1(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),0(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> 0#(-(x,y)) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> 0#(-(x,y)) -#(0(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> 0#(-(x,y)) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> 0#(+(+(x,y),1(#()))) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> 0#(+(x,y)) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) SCC Processor: #sccs: 4 #rules: 19 #arcs: 177/900 DPs: -#(0(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) EDG Processor: DPs: -#(0(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) graph: -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),1(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(1(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(1(x),0(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(1(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),1(y)) -> -#(-(x,y),1(#())) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),1(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(0(x),1(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(0(x),1(y)) -> -#(-(x,y),1(#())) -#(0(x),0(y)) -> -#(x,y) -> -#(1(x),0(y)) -> -#(x,y) -#(0(x),0(y)) -> -#(x,y) -> -#(1(x),1(y)) -> -#(x,y) Matrix Interpretation Processor: dim=1 interpretation: [-#](x0, x1) = 4x0, [log'](x0) = 2x0 + 1, [log](x0) = 3x0 + 1, [ge](x0, x1) = 5x0 + 7x1 + 1, [if](x0, x1, x2) = x1 + 4x2 + 1, [false] = 0, [not](x0) = 2, [true] = 0, [-](x0, x1) = x0, [1](x0) = x0 + 1, [+](x0, x1) = x0 + x1, [0](x0) = x0 + 1, [#] = 0 orientation: -#(0(x),0(y)) = 4x + 4 >= 4x = -#(x,y) -#(0(x),1(y)) = 4x + 4 >= 4x = -#(x,y) -#(0(x),1(y)) = 4x + 4 >= 4x = -#(-(x,y),1(#())) -#(1(x),0(y)) = 4x + 4 >= 4x = -#(x,y) -#(1(x),1(y)) = 4x + 4 >= 4x = -#(x,y) 0(#()) = 1 >= 0 = #() +(#(),x) = x >= x = x +(x,#()) = x >= x = x +(0(x),0(y)) = x + y + 2 >= x + y + 1 = 0(+(x,y)) +(0(x),1(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),0(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),1(y)) = x + y + 2 >= x + y + 2 = 0(+(+(x,y),1(#()))) +(+(x,y),z) = x + y + z >= x + y + z = +(x,+(y,z)) -(#(),x) = 0 >= 0 = #() -(x,#()) = x >= x = x -(0(x),0(y)) = x + 1 >= x + 1 = 0(-(x,y)) -(0(x),1(y)) = x + 1 >= x + 1 = 1(-(-(x,y),1(#()))) -(1(x),0(y)) = x + 1 >= x + 1 = 1(-(x,y)) -(1(x),1(y)) = x + 1 >= x + 1 = 0(-(x,y)) not(true()) = 2 >= 0 = false() not(false()) = 2 >= 0 = true() if(true(),x,y) = x + 4y + 1 >= x = x if(false(),x,y) = x + 4y + 1 >= y = y ge(0(x),0(y)) = 5x + 7y + 13 >= 5x + 7y + 1 = ge(x,y) ge(0(x),1(y)) = 5x + 7y + 13 >= 2 = not(ge(y,x)) ge(1(x),0(y)) = 5x + 7y + 13 >= 5x + 7y + 1 = ge(x,y) ge(1(x),1(y)) = 5x + 7y + 13 >= 5x + 7y + 1 = ge(x,y) ge(x,#()) = 5x + 1 >= 0 = true() ge(#(),0(x)) = 7x + 8 >= 7x + 1 = ge(#(),x) ge(#(),1(x)) = 7x + 8 >= 0 = false() log(x) = 3x + 1 >= 2x + 1 = -(log'(x),1(#())) log'(#()) = 1 >= 0 = #() log'(1(x)) = 2x + 3 >= 2x + 2 = +(log'(x),1(#())) log'(0(x)) = 2x + 3 >= 2x + 3 = if(ge(x,1(#())),+(log'(x),1(#())),#()) problem: DPs: TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Qed DPs: log'#(1(x)) -> log'#(x) log'#(0(x)) -> log'#(x) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Subterm Criterion Processor: simple projection: pi(log'#) = 0 problem: DPs: TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Qed DPs: ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) EDG Processor: DPs: ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) ge#(#(),0(x)) -> ge#(#(),x) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) graph: ge#(1(x),1(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(1(x),1(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(0(x),0(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(1(x),0(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(1(x),1(y)) -> ge#(x,y) ge#(0(x),0(y)) -> ge#(x,y) -> ge#(#(),0(x)) -> ge#(#(),x) ge#(#(),0(x)) -> ge#(#(),x) -> ge#(#(),0(x)) -> ge#(#(),x) SCC Processor: #sccs: 2 #rules: 5 #arcs: 21/25 DPs: ge#(1(x),1(y)) -> ge#(x,y) ge#(1(x),0(y)) -> ge#(x,y) ge#(0(x),1(y)) -> ge#(y,x) ge#(0(x),0(y)) -> ge#(x,y) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Matrix Interpretation Processor: dim=1 interpretation: [ge#](x0, x1) = 1/2x0 + 1/2x1 + 1/2, [log'](x0) = 2x0, [log](x0) = 2x0 + 2, [ge](x0, x1) = 1/2x0 + x1 + 1/2, [if](x0, x1, x2) = x1 + 2x2 + 1, [false] = 0, [not](x0) = 0, [true] = 0, [-](x0, x1) = x0 + 2x1, [1](x0) = x0 + 1, [+](x0, x1) = x0 + x1, [0](x0) = x0 + 1, [#] = 0 orientation: ge#(1(x),1(y)) = 1/2x + 1/2y + 3/2 >= 1/2x + 1/2y + 1/2 = ge#(x,y) ge#(1(x),0(y)) = 1/2x + 1/2y + 3/2 >= 1/2x + 1/2y + 1/2 = ge#(x,y) ge#(0(x),1(y)) = 1/2x + 1/2y + 3/2 >= 1/2x + 1/2y + 1/2 = ge#(y,x) ge#(0(x),0(y)) = 1/2x + 1/2y + 3/2 >= 1/2x + 1/2y + 1/2 = ge#(x,y) 0(#()) = 1 >= 0 = #() +(#(),x) = x >= x = x +(x,#()) = x >= x = x +(0(x),0(y)) = x + y + 2 >= x + y + 1 = 0(+(x,y)) +(0(x),1(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),0(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),1(y)) = x + y + 2 >= x + y + 2 = 0(+(+(x,y),1(#()))) +(+(x,y),z) = x + y + z >= x + y + z = +(x,+(y,z)) -(#(),x) = 2x >= 0 = #() -(x,#()) = x >= x = x -(0(x),0(y)) = x + 2y + 3 >= x + 2y + 1 = 0(-(x,y)) -(0(x),1(y)) = x + 2y + 3 >= x + 2y + 3 = 1(-(-(x,y),1(#()))) -(1(x),0(y)) = x + 2y + 3 >= x + 2y + 1 = 1(-(x,y)) -(1(x),1(y)) = x + 2y + 3 >= x + 2y + 1 = 0(-(x,y)) not(true()) = 0 >= 0 = false() not(false()) = 0 >= 0 = true() if(true(),x,y) = x + 2y + 1 >= x = x if(false(),x,y) = x + 2y + 1 >= y = y ge(0(x),0(y)) = 1/2x + y + 2 >= 1/2x + y + 1/2 = ge(x,y) ge(0(x),1(y)) = 1/2x + y + 2 >= 0 = not(ge(y,x)) ge(1(x),0(y)) = 1/2x + y + 2 >= 1/2x + y + 1/2 = ge(x,y) ge(1(x),1(y)) = 1/2x + y + 2 >= 1/2x + y + 1/2 = ge(x,y) ge(x,#()) = 1/2x + 1/2 >= 0 = true() ge(#(),0(x)) = x + 3/2 >= x + 1/2 = ge(#(),x) ge(#(),1(x)) = x + 3/2 >= 0 = false() log(x) = 2x + 2 >= 2x + 2 = -(log'(x),1(#())) log'(#()) = 0 >= 0 = #() log'(1(x)) = 2x + 2 >= 2x + 1 = +(log'(x),1(#())) log'(0(x)) = 2x + 2 >= 2x + 2 = if(ge(x,1(#())),+(log'(x),1(#())),#()) problem: DPs: TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Qed DPs: ge#(#(),0(x)) -> ge#(#(),x) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Subterm Criterion Processor: simple projection: pi(ge#) = 1 problem: DPs: TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Qed DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) EDG Processor: DPs: +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) graph: +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(+(x,y),1(#())) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(1(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(1(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(y,z) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(y,z) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(0(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),0(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(x,y) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),1(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),1(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(0(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),0(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(x,y) +#(0(x),0(y)) -> +#(x,y) -> +#(1(x),1(y)) -> +#(+(x,y),1(#())) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(y,z) +#(0(x),0(y)) -> +#(x,y) -> +#(+(x,y),z) -> +#(x,+(y,z)) Matrix Interpretation Processor: dim=1 interpretation: [+#](x0, x1) = 2x0 + 2x1 + 2, [log'](x0) = x0 + 7/2, [log](x0) = 3/2x0 + 7/2, [ge](x0, x1) = 2x0 + 3/2x1 + 5/2, [if](x0, x1, x2) = x1 + 2x2, [false] = 0, [not](x0) = 1, [true] = 0, [-](x0, x1) = x0, [1](x0) = x0 + 1, [+](x0, x1) = x0 + x1, [0](x0) = x0 + 1, [#] = 0 orientation: +#(0(x),0(y)) = 2x + 2y + 6 >= 2x + 2y + 2 = +#(x,y) +#(0(x),1(y)) = 2x + 2y + 6 >= 2x + 2y + 2 = +#(x,y) +#(1(x),0(y)) = 2x + 2y + 6 >= 2x + 2y + 2 = +#(x,y) +#(1(x),1(y)) = 2x + 2y + 6 >= 2x + 2y + 2 = +#(x,y) +#(1(x),1(y)) = 2x + 2y + 6 >= 2x + 2y + 4 = +#(+(x,y),1(#())) +#(+(x,y),z) = 2x + 2y + 2z + 2 >= 2y + 2z + 2 = +#(y,z) +#(+(x,y),z) = 2x + 2y + 2z + 2 >= 2x + 2y + 2z + 2 = +#(x,+(y,z)) 0(#()) = 1 >= 0 = #() +(#(),x) = x >= x = x +(x,#()) = x >= x = x +(0(x),0(y)) = x + y + 2 >= x + y + 1 = 0(+(x,y)) +(0(x),1(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),0(y)) = x + y + 2 >= x + y + 1 = 1(+(x,y)) +(1(x),1(y)) = x + y + 2 >= x + y + 2 = 0(+(+(x,y),1(#()))) +(+(x,y),z) = x + y + z >= x + y + z = +(x,+(y,z)) -(#(),x) = 0 >= 0 = #() -(x,#()) = x >= x = x -(0(x),0(y)) = x + 1 >= x + 1 = 0(-(x,y)) -(0(x),1(y)) = x + 1 >= x + 1 = 1(-(-(x,y),1(#()))) -(1(x),0(y)) = x + 1 >= x + 1 = 1(-(x,y)) -(1(x),1(y)) = x + 1 >= x + 1 = 0(-(x,y)) not(true()) = 1 >= 0 = false() not(false()) = 1 >= 0 = true() if(true(),x,y) = x + 2y >= x = x if(false(),x,y) = x + 2y >= y = y ge(0(x),0(y)) = 2x + 3/2y + 6 >= 2x + 3/2y + 5/2 = ge(x,y) ge(0(x),1(y)) = 2x + 3/2y + 6 >= 1 = not(ge(y,x)) ge(1(x),0(y)) = 2x + 3/2y + 6 >= 2x + 3/2y + 5/2 = ge(x,y) ge(1(x),1(y)) = 2x + 3/2y + 6 >= 2x + 3/2y + 5/2 = ge(x,y) ge(x,#()) = 2x + 5/2 >= 0 = true() ge(#(),0(x)) = 3/2x + 4 >= 3/2x + 5/2 = ge(#(),x) ge(#(),1(x)) = 3/2x + 4 >= 0 = false() log(x) = 3/2x + 7/2 >= x + 7/2 = -(log'(x),1(#())) log'(#()) = 7/2 >= 0 = #() log'(1(x)) = x + 9/2 >= x + 9/2 = +(log'(x),1(#())) log'(0(x)) = x + 9/2 >= x + 9/2 = if(ge(x,1(#())),+(log'(x),1(#())),#()) problem: DPs: +#(+(x,y),z) -> +#(y,z) +#(+(x,y),z) -> +#(x,+(y,z)) TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Subterm Criterion Processor: simple projection: pi(+#) = 0 problem: DPs: TRS: 0(#()) -> #() +(#(),x) -> x +(x,#()) -> x +(0(x),0(y)) -> 0(+(x,y)) +(0(x),1(y)) -> 1(+(x,y)) +(1(x),0(y)) -> 1(+(x,y)) +(1(x),1(y)) -> 0(+(+(x,y),1(#()))) +(+(x,y),z) -> +(x,+(y,z)) -(#(),x) -> #() -(x,#()) -> x -(0(x),0(y)) -> 0(-(x,y)) -(0(x),1(y)) -> 1(-(-(x,y),1(#()))) -(1(x),0(y)) -> 1(-(x,y)) -(1(x),1(y)) -> 0(-(x,y)) not(true()) -> false() not(false()) -> true() if(true(),x,y) -> x if(false(),x,y) -> y ge(0(x),0(y)) -> ge(x,y) ge(0(x),1(y)) -> not(ge(y,x)) ge(1(x),0(y)) -> ge(x,y) ge(1(x),1(y)) -> ge(x,y) ge(x,#()) -> true() ge(#(),0(x)) -> ge(#(),x) ge(#(),1(x)) -> false() log(x) -> -(log'(x),1(#())) log'(#()) -> #() log'(1(x)) -> +(log'(x),1(#())) log'(0(x)) -> if(ge(x,1(#())),+(log'(x),1(#())),#()) Qed