how to check if a set is empty

Q(A)$A… is very redundant.

Just with Q(A)… Equation Q will be written one time for each member of A.

If A is empty, it will never be written. Remember that you can only have empty sets if you choose option $Onempty, indicate dimension and have empty bars. Take this example:

$Onempty

set A(*) / /;

variable d;

equation Q,dummy;

Q(A)… d =E= 0;
dummy… d=l=2;

model p /all/;

solve p using lp maximizing d