Let $(\mathbf{x}, \mathbf{y})$ denote the inner product between $\mathbf{x}$ and $\mathbf{y}$, and let $A$ be a real matrix. Why is $(A^\top A \mathbf{x}, \mathbf{x}) = (A \mathbf{x}, A \mathbf{x})$?
Using the scalar product it's easy to see that $$ \begin{align} (A^\top A \mathbf{x})^\top \mathbf{x} &= \mathbf{x}^\top A^\top A \mathbf{x} \\ &= (A \mathbf{x})^\top A \mathbf{x} \end{align} $$ but using only the properties of the inner product I fail to see how one gets the result.
#Edit: To be clear, I'm asking how one comes to the conclusion that $(A^\top A \mathbf{x}, \mathbf{x}) = (A \mathbf{x}, A \mathbf{x})$, independently of how the inner product is defined (ie. only using the axioms of the inner product), so if your answer relies on a particular definition of the inner product such as $(\mathbf{x}, \mathbf{y}) := \mathbf{x}^\top\mathbf{y}$, it's not good.
#Edit 2: The equality I'm asking about can be found in the book Linear Algebra Done Wrong (pdf) by Sergei Treil (p. 172), although here I'm interested only in the case of real matrices in the book it covers the complex case as well.
In order to understand it without regards to a specific inner product, you must understand what the transpose is without regards to a specific matrix representation. More specifically, you need to understand what the adjoint of a linear operator is.
The definition of the adjoint is a generalization of the transpose for real inner product spaces, and of the conjugate transpose for complex inner product spaces. One of the first results after obtaining this result is the following
Using this we can see that, using the terminology in the first block, for $x,y\in V$ we have $$ \langle T^*Tx,y\rangle=\langle Tx,(T^*)^*y\rangle=\langle Tx,Ty\rangle. $$