code: def _softmin3(a, b, c, gamma, be=None):
      r"""Compute softmin of 3 input variables with parameter gamma.
  
      In the limit case :math:`\gamma = 0`, the softmin operator reduces to
      a hard-min operator.
  
      Parameters
      ----------
      a : float64
          First input variable.
      b : float64
          Second input variable.
      c : float64
          Third input variable.
      gamma : float64
          Regularization parameter.
      be : Backend object or string or None
          Backend. If `be` is an instance of the class `NumPyBackend` or the string `"numpy"`,
          the NumPy backend is used.
          If `be` is an instance of the class `PyTorchBackend` or the string `"pytorch"`,
          the PyTorch backend is used.
          If `be` is `None`, the backend is determined by the input arrays.
          See our :ref:`dedicated user-guide page <backend>` for more information.
  
      Returns
      -------
      softmin_value : float64
          Softmin value.
      """
      be = instantiate_backend(be, a, b, c, gamma)
      a = be.array(a, dtype=be.float64)
      b = be.array(b, dtype=be.float64)
      c = be.array(c, dtype=be.float64)
      gamma = be.array(gamma, dtype=be.float64)
  
      a /= -gamma
      b /= -gamma
      c /= -gamma
  
      max_val = max(max(a, b), c)
  
      tmp = 0
      tmp += be.exp(a - max_val)
      tmp += be.exp(b - max_val)
      tmp += be.exp(c - max_val)
      softmin_value = -gamma * (be.log(tmp) + max_val)
      return softmin_value
  
file_path: tslearn/tslearn/metrics/soft_dtw_fast.py
imports: import numpy
  from numba import njit, prange
  from tslearn.backend.backend import instantiate_backend
label_desc: Use image node_id 2 for calling a global function with example usage: _softmin3(a, b, c, gamma, be) and returns: softmin_value