# Illegal operation: log( {convex} ) problem

Hello everyone,

I run logarithm function which involves optimization parameters as follows
` log(real(C1)+sigma_1+(sigma_2)*inv_pos(rho(1)))/log(2)>= real(lamda*(trace(W_1)+trace(W_E)+p_cir)+t)`
where
` C1=trace(H_1*W_1)+trace(H_1*W_2)+trace(H_1*W_3)+trace(H_1*W_4).`

sigma_1 sigma_2, lamda and are p_cir constant. The optimization parameters are W_1,W_2,W_3,W_4, W_E, rho(1) and t. I guarantee that the above constraint is convex since `0<rho(1)<1`, but how can i write it according to the CVX’s operations?

Thank you a lot in advance!

Let C1 = 0 (so W_1 = W_2 = W_3 = W_4 = all zeros matrices), sigma_1 = sigma_2 = 1. Then the Left-Hand Side is `log(1+1/rho(1))/log(2)`, which is convex as a function of `rho(1)`;. This is the LHS of `>=` constraint; therefore the constraint is non-convex.

`convex <= affine` is a convex constraint.
`convex >= affine` is a non-convex constraint.
For example, consider the constraint `x^2 >= 1`.
`x = -1` and `x = 1` are both feasible. But the convex combination, `x = 0`, is not feasible. Therefore that constraint is non-convex.