I want to use Mathematica to show that the inner product of a vector with itself is equal to the square of its norm.
This is what I tried:
$Assumptions = x ∈ Vectors[3, Reals];
expr = Dot[x, x] == Norm[x]^2;
FullSimplify[expr]
(*x.x == Norm[x]^2*)
TensorReduce[expr]
(*x.x == Norm[x]^2*)
I had expected at least one of the last two lines to return True
.
Why couldn't Mathematica simplify expr
to True
in this case? Are there additional assumptions I should include so that it return True
?
Norm
is simply not (fully) supported. $\endgroup$Norm
explicitly says that For vectors,Norm[v]
isSqrt[v.Conjugate[v]]
.expr = Dot[x, x] == Sqrt[Dot[x, Conjugate[x]]]^2
does yield true, soNorm
is not consideringx
to be a vector. $\endgroup$