code: def test_combine_powers():
      assert combine_powers(
          MatMul(D, Inverse(D), D, evaluate=False)
      ) == MatMul(Identity(n), D, evaluate=False)
      assert combine_powers(
          MatMul(B.T, Inverse(E * A), E, A, B, evaluate=False)
      ) == MatMul(B.T, Identity(m), B, evaluate=False)
      assert combine_powers(
          MatMul(A, E, Inverse(A * E), D, evaluate=False)
      ) == MatMul(Identity(n), D, evaluate=False)
  
imports: from sympy.core import I, symbols, Basic, Mul, S
  from sympy.core.mul import mul
  from sympy.functions import adjoint, transpose
  from sympy.matrices.exceptions import ShapeError
  from sympy.matrices import Identity, Inverse, Matrix, MatrixSymbol, ZeroMatrix, eye, ImmutableMatrix
  from sympy.matrices.expressions import Adjoint, Transpose, det, MatPow
  from sympy.matrices.expressions.special import GenericIdentity
  from sympy.matrices.expressions.matmul import factor_in_front, remove_ids, MatMul, combine_powers, any_zeros, unpack, only_squares
  from sympy.strategies import null_safe
  from sympy.assumptions.ask import Q
  from sympy.assumptions.refine import refine
  from sympy.core.symbol import Symbol
  from sympy.testing.pytest import XFAIL, raises
label_desc: Use image node_id 6 for calling a global function with example usage: test_combine_powers() without return types