code: def _find_best_literal(
      pos, neg, name_vec, op_vec, num_val_vec, nom_val_vec
  ):
      """
      Find the best literal for OpenMP based IREP*
  
      Parameters
      ----------
      pos : const double[::1, :]
          Positive instances
      neg : const double[::1, :]
          Negative instances
      name_vec : const int64_t[::1]
          Feature names for literals
      op_vec : const uint8_t[::1]
          Operators for literals
      num_val_vec : const double[::1]
          Numerical feature values for literals
      nom_val_vec : const int64_t[::1]
          Nominal feature values for literals
  
      Returns
      -------
      uint64_t
          The index of the best literal
      """
      p = len(pos)
      n = len(neg)
      gain_list = np.empty(len(name_vec), dtype=np.float64)
  
      for i in nb.prange(len(name_vec)):
          name = name_vec[i]
          op = op_vec[i]
          num_val = num_val_vec[i]
          nom_val = nom_val_vec[i]
  
          gain_list[i] = _gain(
              p,
              _count_bound_literal(pos, name, op, num_val, nom_val),
              n,
              _count_bound_literal(neg, name, op, num_val, nom_val),
          )
  
      return np.argmax(gain_list)
  
imports: import numpy
  import numba
label_desc: Use image node_id 4 for calling a global function with example usage: _find_best_literal(pos, neg, name_vec, op_vec, num_val_vec, nom_val_vec) and returns: np