code: def min(
      x: torch.Tensor,
      /,
      *,
      axis: Optional[Union[int, Sequence[int]]] = None,
      keepdims: bool = False,
      initial: Optional[Union[int, float, complex]] = None,
      where: Optional[torch.Tensor] = None,
      out: Optional[torch.Tensor] = None,
  ) -> torch.Tensor:
      if axis == ():
          if ivy.exists(out):
              return ivy.inplace_update(out, x)
          else:
              return x
      if where is not None:
          max_val = (
              ivy.iinfo(x.dtype).max
              if ivy.is_int_dtype(x.dtype)
              else ivy.finfo(x.dtype).max
          )
          val = torch.ones_like(x) * max_val
          val = val.type(x.dtype)
          x = torch.where(where, x, val)
      if not keepdims and not axis and axis != 0:
          result = torch.amin(input=x, out=out)
      result = torch.amin(input=x, dim=axis, keepdim=keepdims, out=out)
      if initial is not None:
          initial = torch.tensor(initial, dtype=x.dtype)
          result = torch.minimum(result, initial)
      return result
  
file_path: ivy/ivy/functional/backends/torch/statistical.py
imports: from typing import Union, Optional, Sequence
  import torch
  import ivy
  from ivy.functional.ivy.statistical import _get_promoted_type_of_operands
  from ivy.func_wrapper import with_unsupported_dtypes, with_supported_dtypes
  from .None import backend_version
label_desc: Use image node_id 1 for calling a global function with example usage: min() and returns: result, ivy, x