# How can I express this CVX?

I have a linear constraint in the form below

\zeta_u\ge\sqrt{\sum_{c=1}^C(1-x_{u,c})y_{u,c}+z},\hspace{2mm}\forall u=1,\cdots,U

Here, \zeta_u (continuous) and x_{u,c} (binary) are optimization variables.
z is a constant.

How to write it in CVX format? Can we use norm or any other operator?

Is this valid in CVX?

   variable X(U,C) binary
variable S(U,C) binary
variable Zeta(U)

for c=1:C
for u=1:U
S(u,c)==1-X(u,c);
end
end

for u=1:U
Zeta(u)>=norm[z;S(u,:).*Y(u,:)];
end

Your original formulation, which you have now edited out, will not be accepted by CVX, because it is
affine expression >= concave expression.

Presuming y_{n,c} are constants, which seems to be the case, and are nonegative, you ought to be able to adapt my answer at https://or.stackexchange.com/questions/1052/linearize-or-approximate-a-square-root-constraint/1053#1053 to express the right-hand side using norm. I believe you will need to introduce a new binary variable constrained to equal one minus the existing variable, and use that in the norm.

The constraint is not linear, but formulated per my answer, is a convex SOCP constraint.

Sorry, my mistake, yes, it is a conic constraint. Also, y_{u,c} are constants (>0)

Would you please have a look at my edit. Is this valid now. Or I should use the square root of y_{u,c}.

For example,

   T(u,c)=sqrt(Y(u,c))

for u=1:U
Zeta(u)>=norm[z;S(u,:).*T(u,:)];
end

You need square root on z.

You can more simply and efficiently use
S == 1-X
instead of the double for loop.