Question: Why is my maple output not Simplified?

I wrote a quaternion package, defined my own `*` and etc.

now I multiply two matrices using MatrixMatrixMultiply.

and I obtain something like this, notice it's not simplified, with terms like (2+K)(4+I):

however, if i simply highlight what's shown above(the output) and copy and paste it and then press enter, i get a simplified version (it still doesn't simplify `^` but that can wait)

 

can someone explain to me briefly why maple doesn't realize that `*` is modified until I "copy and paste and re-enter" and output?

Please Wait...