Inter Array Dependence Randomization Constraint

Hi all,

Can inter dependence between two rand array elements can be solved using array randomization?

For example
Whether following functionality will be solved using randomization.If not please suggest any other alternatives.
Below code does not gets solved by the compiler.


class Mem_constraint;
           
    rand bit [31:0] segment_Mem_size[64];
    rand bit [31:0] segment_addr_start[64];
         bit [31:0] Mem_begin_addr;
         bit [31:0] Total_mem_size;  


        constraint segment_size_constraint1
        {
           (segment_Mem_size.sum()*1024) < Total_mem_size;             
        }

        constraint segment_size_constraint2
        {
           foreach(segment_Mem_size[i]) {
              segment_Mem_size[i] > 1; //segment size should be between 2 to 64 and should be a even number.
              segment_Mem_size[i] < 65;
              segment_Mem_size[i][0] == 1'b0;
              (segment_addr_start[i][15:0])+(segment_Mem_size[i]*1024) < (32'h10000) ;// Segment should not cross 64KB boundary.
           }
         }


         constraint segment_start_addr_constraint1
         {
             foreach (segment_addr_start[i]){
                if (i > 0)  
                   segment_addr_start[i] == segment_addr_start[i-1]+(segment_Mem_size[i-1] *1024); // Compute Start addr for each segment 
                if (i == 0)
                   segment_addr_start[i] == Mem_begin_addr;            
             }
         }

  


endclass



In the above code when following code is added the compiler hangs.
*segment_addr_start[i][15:0])+(segment_Mem_size[i]1024) < (32’h10000);
// Segment should not cross 64KB boundary.