left and right inverses
Two-sided invertibility is a strong demand. It is often useful to ask for half of it. A left inverse of T : V -> W is a map L : W -> V with L T = I_V — apply T then L and you return home. A right inverse is a map R : W -> V with T R = I_W — apply R then T and you land back where you started in W. The two are genuinely different requests, and a map can have one without the other.
They correspond exactly to injectivity and surjectivity. T has a left inverse if and only if T is injective: being able to undo T from the left means T loses no information. T has a right inverse if and only if T is surjective: being able to precede T by R that hits every target means T reaches everything. (For non-square or infinite-dimensional maps these are separate phenomena, which is why one-sided inverses earn their own name.)
Neither one-sided inverse is unique in general. If T : R^2 -> R^3 is injective, it has infinitely many left inverses, because L is only pinned down on im T and is free on a complementary subspace. Likewise a surjective map onto a smaller space has many right inverses, one for each way of choosing preimages.
The two collapse into one exactly when both exist and the spaces are square (or both maps are operators on the same finite-dimensional space). If L T = I and T R = I then L = L(T R) = (L T)R = R, so the left and right inverses coincide and equal the genuine two-sided inverse. In finite-dimensional End(V), where injective already implies surjective, a one-sided inverse is automatically two-sided.
The moment a map has both a left and a right inverse, the one-line computation forces them to be the same map.
The Moore-Penrose pseudoinverse picks one canonical one-sided inverse using an inner product: for an injective T it gives the least-squares left inverse (T^* T)^-1 T^*. This is exactly the operator behind the normal equations.