code: def prod(
      x,
      /,
      *,
      axis=None,
      dtype=None,
      out=None,
      keepdims=False,
      initial=None,
      where=True,
  ):
      if where is not True:
          x = ivy.where(
              where, x, ivy.default(out, ivy.ones_like(x)), out=out
          )
      if initial is not None:
          initial = np_frontend.array(initial, dtype=dtype).tolist()
          if axis is not None:
              s = ivy.to_list(ivy.shape(x, as_array=True))
              s[axis] = 1
              header = ivy.full(ivy.Shape(tuple(s)), initial)
              x = ivy.concat([header, x], axis=axis)
          else:
              x[0] *= initial
      return ivy.prod(
          x, axis=axis, dtype=dtype, keepdims=keepdims, out=out
      )
  
file_path: ivy/ivy/functional/frontends/numpy/mathematical_functions/sums_products_differences.py
imports: import ivy
  from ivy.functional.frontends.numpy.func_wrapper import to_ivy_arrays_and_back, handle_numpy_dtype, from_zero_dim_arrays_to_scalar, handle_numpy_out
  import ivy.functional.frontends.numpy
label_desc: Use image node_id 9 for calling a global function with example usage: prod() and returns: ivy