parameters: (self, ind_var, index_set, new_index)
docstring: replace individual indices in multi-dimensional access variable, which
          is a build_tuple
docstring_summary: replace individual indices in multi-dimensional access variable, which
          is a build_tuple
docstring_tokens: replace individual indices in multi - dimensional access variable which is a build_tuple
function: def _replace_multi_dim_ind(self, ind_var, index_set, new_index):
          """
          replace individual indices in multi-dimensional access variable, which
          is a build_tuple
          """
          require(ind_var is not None)
          # check for Tuple instead of UniTuple since some dims could be slices
          require(isinstance(self.typemap[ind_var.name],
                  (types.Tuple, types.UniTuple)))
          ind_def_node = get_definition(self.func_ir, ind_var)
          require(isinstance(ind_def_node, ir.Expr)
                  and ind_def_node.op == 'build_tuple')
          ind_def_node.items = [new_index if v.name in index_set else v
                                for v in ind_def_node.items]
function_tokens: def _replace_multi_dim_ind ( self , ind_var , index_set , new_index ) : require ( ind_var is not None ) # check for Tuple instead of UniTuple since some dims could be slices require ( isinstance ( self . typemap [ ind_var . name ] , ( types . Tuple , types . UniTuple ) ) ) ind_def_node = get_definition ( self . func_ir , ind_var ) require ( isinstance ( ind_def_node , ir . Expr ) and ind_def_node . op == 'build_tuple' ) ind_def_node . items = [ new_index if v . name in index_set else v for v in ind_def_node . items ]