code: def quaternion_inverse(quaternion):
      """Return inverse of quaternion.
  
      >>> q0 = random_quaternion()
      >>> q1 = quaternion_inverse(q0)
      >>> numpy.allclose(quaternion_multiply(q0, q1), [1, 0, 0, 0])
      True
  
      """
      q = numpy.array(quaternion, dtype=numpy.float64, copy=True)
      numpy.negative(q[1:], q[1:])
      return q / numpy.dot(q, q)
  
imports: import math
  import numpy
label_desc: Use image node_id 29 for calling a global function with example usage: quaternion_inverse(quaternion) and returns: unknown