code: def slogdet(x: Array, /) -> SlogdetResult:
      """
      Array API compatible wrapper for :py:func:`np.linalg.slogdet <numpy.linalg.slogdet>`.
  
      See its docstring for more information.
      """
      # Note: the restriction to floating-point dtypes only is different from
      # np.linalg.slogdet.
      if x.dtype not in _floating_dtypes:
          raise TypeError(
              "Only floating-point dtypes are allowed in slogdet"
          )
  
      # Note: the return type here is a namedtuple, which is different from
      # np.linalg.slogdet, which only returns a tuple.
      return SlogdetResult(
          *map(Array._new, np.linalg.slogdet(x._array))
      )
  
imports: from __future__ import annotations
  import functools
  from ._dtypes import _floating_dtypes, _numeric_dtypes
  from ._manipulation_functions import reshape
  from ._array_object import Array
  from .._core.internal import _normalize_axis_indices
  from typing import TYPE_CHECKING
  from typing import NamedTuple
  import cupy
label_desc: Use image node_id 16 for calling a global function with example usage: slogdet() and returns: SlogdetResult