code: def expm(tensor, like=None):
      """Compute the matrix exponential of an array :math:`e^{X}`.
  
      ..note::
          This function is not differentiable with Autograd, as it
          relies on the scipy implementation.
      """
      if like == "torch":
          return tensor.matrix_exp()
      if like == "jax":
          from jax.scipy.linalg import expm as jax_expm
  
          return jax_expm(tensor)
      if like == "tensorflow":
          import tensorflow as tf
  
          return tf.linalg.expm(tensor)
      from scipy.linalg import expm as scipy_expm
  
      return scipy_expm(tensor)
  
imports: import functools
  from collections.abc import Sequence
  import autoray
  import numpy
  from autograd.numpy.numpy_boxes import ArrayBox
  from autoray import numpy
  from numpy import ndarray
  from .None import single_dispatch
  from .utils import cast, cast_like, get_interface, requires_grad
label_desc: Use image node_id 22 for calling a global function with example usage: expm(tensor, like) and returns: scipy_expm, tensor, jax_expm, tf