A bilinear function on a vector space  {jatex options:inline}V{/jatex}  is a function  {jatex options:inline}f{/jatex}   {jatex options:inline}\ \colon V \times V \rightarrow \mathbb{R}{/jatex}  linear in both arguments.
The dot product  {jatex options:inline}f( \mathbf{v}_1, \mathbf{v}_2)= \mathbf{v}_1 \cdot \mathbf{v}_2{/jatex}  is a bilinear function.
{jatex options:inline}f( k\mathbf{v}_1, \mathbf{v}_2)= (k \mathbf{v}_1) \cdot \mathbf{v}_2= k( \mathbf{v}_1 \cdot \mathbf{v}_2){/jatex}
{jatex options:inline}f(\mathbf{v}_1, k\mathbf{v}_2)= \mathbf{v}_1 \cdot (k \mathbf{v}_2)= k( \mathbf{v}_1 \cdot \mathbf{v}_2){/jatex}
{jatex options:inline}f( \mathbf{v}_1 + \mathbf{w}_1, \mathbf{v}_2)= ( \mathbf{v}_1 + \mathbf{w}_1) \cdot \mathbf{v}_2= \mathbf{v}_1 \cdot \mathbf{v}_2+ \mathbf{w}_1 \cdot \mathbf{v}_2{/jatex}
{jatex options:inline}f( \mathbf{v}_1, \mathbf{v}_2++ \mathbf{w}_2)= \mathbf{v}_1 \cdot (\mathbf{v}_2+ \mathbf{w}_2)= \mathbf{v}_1 \cdot \mathbf{v}_2+ \mathbf{v}_1 \cdot \mathbf{w}_2{/jatex}
The function that takes one of a pair of vectors and takes the dot product of that vector with itself is not a bilinear function.
{jatex options:inline}f( k\mathbf{v}_1, \mathbf{v}_2)=(k \mathbf{v}_1) \cdot (k\mathbf{v}_1)=k^2 f(\mathbf{v}_1, \mathbf{v}_2){/jatex}