FTransform inverse/compose strange results

I have a simple example:

and it will log:


Then, if you change scale to repeated same values, for example [1, 1, 1]:


it will log:


If I’m not mistaken, then


For every invertable matrice A.

But here is happening something strange.
If you swap pins on compose, than it will always log correct result.

I don’t believe, that Epic could make a mistake in such core feature.

Then, most likely,
the problem is in my knowledge of linear algebra.

Pls, help.

I would make initial transform editable, add this to construction script, and test the results when changing initial transform to different values. Also it would be useful to check c++ version of invert transform function, maybe it have some restrictions for non-uniform scales.