input: Write a function to perform matrix multiplication on two given matrices. The function should return the resulting matrix. If the two matrices cannot be multiplied, the function should return an empty list.
  
  def matrix_multiplication(A, B):  
      if len(A[0]) != len(B):  
          return []  
      rows_A = len(A)  
      cols_A = len(A[0])  
      rows_B = len(B)  
      cols_B = len(B[0])  
      result = [[0 for i in range(cols_B)] for j in range(rows_A)]  
      for i in range(rows_A):  
          for j in range(cols_B):  
              for k in range(cols_A):  
                  result[i][j] += A[i][k] * B[k][j]  
      return result
  
  assert matrix_multiplication([[1, 2], [3, 4]], [[5, 6], [7, 8]]) == [[19, 22], [43, 50]]
  assert matrix_multiplication([[1, 2], [3, 4]], [[5], [6]]) == [[17], [39]]
  assert matrix_multiplication([[1, 2, 3]], [[4], [5], [6]]) == [[32]]
  assert matrix_multiplication([[1]], [[2]]) == [[2]]
  assert matrix_multiplication([[1, 2], [3, 4]], [[1], [2], [3]]) == []
output: def matrix_multiplication(A, B):  
      if len(A[0]) != len(B):  
          return []  
      rows_A = len(A)  
      cols_A = len(A[0])  
      rows_B = len(B)  
      cols_B = len(B[0])  
      result = [[0 for i in range(cols_B)] for j in range(rows_A)]  
      for i in range(rows_A):  
          for j in range(cols_B):  
              for k in range(cols_A):  
                  result[i][j] += A[i][k] * B[k][j]  
      return result