YES Problem: not(x) -> if(x,false(),true()) and(x,y) -> if(x,y,false()) or(x,y) -> if(x,true(),y) implies(x,y) -> if(x,y,true()) =(x,x) -> true() =(x,y) -> if(x,y,not(y)) if(true(),x,y) -> x if(false(),x,y) -> y if(x,x,if(x,false(),true())) -> true() =(x,y) -> if(x,y,if(y,false(),true())) Proof: DP Processor: DPs: not#(x) -> if#(x,false(),true()) and#(x,y) -> if#(x,y,false()) or#(x,y) -> if#(x,true(),y) implies#(x,y) -> if#(x,y,true()) =#(x,y) -> not#(y) =#(x,y) -> if#(x,y,not(y)) =#(x,y) -> if#(y,false(),true()) =#(x,y) -> if#(x,y,if(y,false(),true())) TRS: not(x) -> if(x,false(),true()) and(x,y) -> if(x,y,false()) or(x,y) -> if(x,true(),y) implies(x,y) -> if(x,y,true()) =(x,x) -> true() =(x,y) -> if(x,y,not(y)) if(true(),x,y) -> x if(false(),x,y) -> y if(x,x,if(x,false(),true())) -> true() =(x,y) -> if(x,y,if(y,false(),true())) Usable Rule Processor: DPs: not#(x) -> if#(x,false(),true()) and#(x,y) -> if#(x,y,false()) or#(x,y) -> if#(x,true(),y) implies#(x,y) -> if#(x,y,true()) =#(x,y) -> not#(y) =#(x,y) -> if#(x,y,not(y)) =#(x,y) -> if#(y,false(),true()) =#(x,y) -> if#(x,y,if(y,false(),true())) TRS: not(x) -> if(x,false(),true()) if(true(),x,y) -> x if(false(),x,y) -> y Arctic Interpretation Processor: dimension: 1 usable rules: interpretation: [=#](x0, x1) = x0 + 1x1 + 13, [implies#](x0, x1) = x0 + 1x1 + 2, [or#](x0, x1) = x0 + x1 + 8, [and#](x0, x1) = x0 + 1x1 + 2, [if#](x0, x1, x2) = x1 + 0, [not#](x0) = 8, [if](x0, x1, x2) = x0 + x1 + 1x2 + 0, [true] = 5, [false] = 7, [not](x0) = x0 + 3 orientation: not#(x) = 8 >= 7 = if#(x,false(),true()) and#(x,y) = x + 1y + 2 >= y + 0 = if#(x,y,false()) or#(x,y) = x + y + 8 >= 5 = if#(x,true(),y) implies#(x,y) = x + 1y + 2 >= y + 0 = if#(x,y,true()) =#(x,y) = x + 1y + 13 >= 8 = not#(y) =#(x,y) = x + 1y + 13 >= y + 0 = if#(x,y,not(y)) =#(x,y) = x + 1y + 13 >= 7 = if#(y,false(),true()) =#(x,y) = x + 1y + 13 >= y + 0 = if#(x,y,if(y,false(),true())) not(x) = x + 3 >= x + 7 = if(x,false(),true()) if(true(),x,y) = x + 1y + 5 >= x = x if(false(),x,y) = x + 1y + 7 >= y = y problem: DPs: TRS: not(x) -> if(x,false(),true()) if(true(),x,y) -> x if(false(),x,y) -> y Qed