In reply to Mihaelf:
The LRM says arrays declared randc are treated as if their member elements are each rand or randc.
But it appears that handling randc variables with constraints containing dependencies has some issues. If you treat one of the randc variables as a state variable, you effectively have a new constraint on the the remaining randc variables, and that can break the cyclic nature of the randc variable.