code: def ifftn(x, shape=None, axes=None, overwrite_x=False):
      """
      Return inverse multidimensional discrete Fourier transform.
  
      The sequence can be of an arbitrary type.
  
      The returned array contains::
  
        y[j_1,..,j_d] = 1/p * sum[k_1=0..n_1-1, ..., k_d=0..n_d-1]
           x[k_1,..,k_d] * prod[i=1..d] exp(sqrt(-1)*2*pi/n_i * j_i * k_i)
  
      where ``d = len(x.shape)``, ``n = x.shape``, and ``p = prod[i=1..d] n_i``.
  
      For description of parameters see `fftn`.
  
      See Also
      --------
      fftn : for detailed information.
  
      Examples
      --------
      >>> from scipy.fftpack import fftn, ifftn
      >>> import numpy as np
      >>> y = (-np.arange(16), 8 - np.arange(16), np.arange(16))
      >>> np.allclose(y, ifftn(fftn(y)))
      True
  
      """
      shape = _good_shape(x, shape, axes)
      return _pocketfft.ifftn(x, shape, axes, None, overwrite_x)
  
file_path: catboost/contrib/python/scipy/py3/scipy/fftpack/basic.py
imports: from scipy.fft import _pocketfft
  from .helper import _good_shape
label_desc: Use image node_id 6 for calling a global function with example usage: ifftn(x, shape, axes, overwrite_x) and returns: _pocketfft