code: def test_product():
      GLZ_A = MG.GLZ(A, "xy")
      GLZ_B = MG.GLZ(B, "xy")
      GLZ_C = MG.GLZ(B, "ij")
  
      GLZ_AB = MG.product(GLZ_A, GLZ_B)
      assert np.allclose(
          GLZ_AB.matrix, np.dot(GLZ_A.matrix, GLZ_B.matrix)
      )
  
      # different coordinates: can't make the product
      pytest.raises(ValueError, MG.product, GLZ_A, GLZ_C)
  
file_path: nipy/nipy/core/reference/tests/test_matrix_groups.py
imports: import numpy
  import pytest
  from scipy.linalg import expm
  import nipy.core.reference.tests.matrix_groups
  from nipy.core.api import ArrayCoordMap
label_desc: Use image node_id 5 for calling a global function with example usage: test_product() without return types