If a vector space has an inner product, it has a norm: you can define the norm of a vector to be the square root of the inner product of the vector with itself.
You can use the defining properties of an inner product to show that
This is a form of the so-called polarization identity. It implies that you can calculate inner products if you can compute norms.
So does this mean you can define an inner product on any space that has a norm?
No, it doesn’t work that way. The polarization identity says that if you have a norm that came from an inner product then you can recover that inner product from norms.
What would go wrong if tried to use the equation above to define an inner product on a space that doesn’t have one?
Take the plane R² with the max norm, i.e.
and define a function that takes two vectors and returns the right-side of the polarization identity.
This is a well-defined function, but it’s not an inner product. An inner product is bilinear, i.e. if you multiply one of the arguments by a constant, you multiply the inner product by the same constant.
To see that f is not an inner product, let v = (1, 0) and w = (0, 1). Then f(v, w) = -1/2, but f(2v, w) is also -1/2. Multiplying the first argument by 2 did not multiply the result by 2.
When we say that R² with the max norm doesn’t have an inner product, it’s not simply that we forgot to define one. We cannot define an inner product that is consistent with the norm structure.