YES Problem: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) f(true(),x,y,z) -> del(.(y,z)) f(false(),x,y,z) -> .(x,del(.(y,z))) =(nil(),nil()) -> true() =(.(x,y),nil()) -> false() =(nil(),.(y,z)) -> false() =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) Proof: DP Processor: DPs: del#(.(x,.(y,z))) -> =#(x,y) del#(.(x,.(y,z))) -> f#(=(x,y),x,y,z) f#(true(),x,y,z) -> del#(.(y,z)) f#(false(),x,y,z) -> del#(.(y,z)) =#(.(x,y),.(u(),v())) -> =#(y,v()) =#(.(x,y),.(u(),v())) -> =#(x,u()) TRS: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) f(true(),x,y,z) -> del(.(y,z)) f(false(),x,y,z) -> .(x,del(.(y,z))) =(nil(),nil()) -> true() =(.(x,y),nil()) -> false() =(nil(),.(y,z)) -> false() =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) Matrix Interpretation Processor: dim=1 interpretation: [f#](x0, x1, x2, x3) = 2x1 + 3x2 + 2x3 + 4, [=#](x0, x1) = 4x1 + 4, [del#](x0) = x0 + 2, [and](x0, x1) = 2, [v] = 0, [u] = 0, [nil] = 0, [false] = 0, [true] = 0, [f](x0, x1, x2, x3) = 2x1 + 4x2 + 4x3 + 3, [=](x0, x1) = 6, [del](x0) = x0, [.](x0, x1) = 2x0 + 2x1 + 1 orientation: del#(.(x,.(y,z))) = 2x + 4y + 4z + 5 >= 4y + 4 = =#(x,y) del#(.(x,.(y,z))) = 2x + 4y + 4z + 5 >= 2x + 3y + 2z + 4 = f#(=(x,y),x,y,z) f#(true(),x,y,z) = 2x + 3y + 2z + 4 >= 2y + 2z + 3 = del#(.(y,z)) f#(false(),x,y,z) = 2x + 3y + 2z + 4 >= 2y + 2z + 3 = del#(.(y,z)) =#(.(x,y),.(u(),v())) = 8 >= 4 = =#(y,v()) =#(.(x,y),.(u(),v())) = 8 >= 4 = =#(x,u()) del(.(x,.(y,z))) = 2x + 4y + 4z + 3 >= 2x + 4y + 4z + 3 = f(=(x,y),x,y,z) f(true(),x,y,z) = 2x + 4y + 4z + 3 >= 2y + 2z + 1 = del(.(y,z)) f(false(),x,y,z) = 2x + 4y + 4z + 3 >= 2x + 4y + 4z + 3 = .(x,del(.(y,z))) =(nil(),nil()) = 6 >= 0 = true() =(.(x,y),nil()) = 6 >= 0 = false() =(nil(),.(y,z)) = 6 >= 0 = false() =(.(x,y),.(u(),v())) = 6 >= 2 = and(=(x,u()),=(y,v())) problem: DPs: TRS: del(.(x,.(y,z))) -> f(=(x,y),x,y,z) f(true(),x,y,z) -> del(.(y,z)) f(false(),x,y,z) -> .(x,del(.(y,z))) =(nil(),nil()) -> true() =(.(x,y),nil()) -> false() =(nil(),.(y,z)) -> false() =(.(x,y),.(u(),v())) -> and(=(x,u()),=(y,v())) Qed