YES Problem: if(true(),x,y) -> x if(false(),x,y) -> y if(x,y,y) -> y if(if(x,y,z),u(),v()) -> if(x,if(y,u(),v()),if(z,u(),v())) Proof: Matrix Interpretation Processor: dim=1 interpretation: [v] = 0, [if](x0, x1, x2) = 4x0 + x1 + 4x2, [u] = 0, [true] = 4, [false] = 5 orientation: if(true(),x,y) = x + 4y + 16 >= x = x if(false(),x,y) = x + 4y + 20 >= y = y if(x,y,y) = 4x + 5y >= y = y if(if(x,y,z),u(),v()) = 16x + 4y + 16z >= 4x + 4y + 16z = if(x,if(y,u(),v()),if(z,u(),v())) problem: if(x,y,y) -> y if(if(x,y,z),u(),v()) -> if(x,if(y,u(),v()),if(z,u(),v())) Matrix Interpretation Processor: dim=1 interpretation: [v] = 5, [if](x0, x1, x2) = 4x0 + x1 + x2 + 3, [u] = 1 orientation: if(x,y,y) = 4x + 2y + 3 >= y = y if(if(x,y,z),u(),v()) = 16x + 4y + 4z + 21 >= 4x + 4y + 4z + 21 = if(x,if(y,u(),v()),if(z,u(),v())) problem: if(if(x,y,z),u(),v()) -> if(x,if(y,u(),v()),if(z,u(),v())) Matrix Interpretation Processor: dim=1 interpretation: [v] = 0, [if](x0, x1, x2) = 5x0 + 2x1 + 2x2 + 4, [u] = 0 orientation: if(if(x,y,z),u(),v()) = 25x + 10y + 10z + 24 >= 5x + 10y + 10z + 20 = if(x,if(y,u(),v()),if(z,u(),v())) problem: Qed