一ヶ所=と書くべきを≦と書いていたので訂正
3次でやってもすぐに拡張できるのでそれでする。
Aの行ベクトルの転置を順にa[1],a[2],a[3]とする。
このとき
A=
[a[1]^T]
[a[2]^T]
[a[3]^T]
Bの列ベクトルの複素共役を順にb[1],b[2],b[3]とする。
このとき
B=[(b[1]^*)^T (b[2]^*)^T (b[3]^*)^T]
すると
trAB=a[1]^T(b[1]^*)^T+a[2]^T(b[2]^*)^T+a[3]^T(b[3]^*)^T
trAB=(b[1]^*a[1]+b[2]^*a[2]+b[3]^*a[3])^T
trAB=b[1]^*a[1]+b[2]^*a[2]+b[3]^*a[3]
trAB=(a[1],b[1])+(a[2],b[2])+(a[3],b[3])
tr(AA^*)=a[1]^T(a[1]^T)^*+a[2]^T(a[2]^T)^*+a[3]^T(a[3]^T)^*
tr(AA^*)=a[1]^T(a[1]^*)^T+a[2]^T(a[2]^*)^T+a[3]^T(a[3]^*)^T
tr(AA^*)=(a[1]^*a[1]+a[2]^*a[2]+a[3]^*a[3])^T
tr(AA^*)=a[1]^*a[1]+a[2]^*a[2]+a[3]^*a[3]
tr(AA^*)=(a[1],a[1])+(a[2],a[2])+(a[3],a[3])
tr(AA^*)=∥a[1]∥^2+∥a[2]∥^2+∥a[3]∥^2
tr(BB^*)=tr(B^*B)
tr(BB^*)=b[1]^T(b[1]^*)^T+b[1]^T(b[1]^*)^T+b[1]^T(b[1]^*)^T
tr(BB^*)=(b[1]^*b[1]+b[1]^*b[1]+b[1]^*b[1])^T
tr(BB^*)=b[1]^*b[1]+b[1]^*b[1]+b[1]^*b[1]
tr(BB^*)=(b[1],b[1])+(b[2],b[2])+(b[3],b[3])
tr(BB^*)=∥b[1]∥^2+∥b[2]∥^2+∥b[3]∥^2
よって
|trAB|^2=
|(a[1],b[1])+(a[2],b[2])+(a[3],b[3])|^2
≦(|(a[1],b[1])|+|(a[2],b[2])|+|(a[3],b[3])|)^2
=|(a[1],b[1])|^2+|(a[2],b[2])|^2+|(a[3],b[3])|^2
+2|(a[1],b[1])||(a[2],b[2])|
+2|(a[2],b[2])||(a[3],b[3])|
+2|(a[3],b[3])||(a[1],b[1])|
≦(∥a[1]∥∥b[1]∥)^2+(∥a[2]∥∥b[2]∥)^2+(∥a[3]∥∥b[3]∥)^2
+2∥a[1]∥∥b[1]∥∥a[2]∥∥b[2]∥
+2∥a[2]∥∥b[2]∥∥a[3]∥∥b[3]∥
+2∥a[3]∥∥b[3]∥∥a[1]∥∥b[1]∥
≦∥a[1]∥^2∥b[1]∥^2+∥a[2]∥^2∥b[2]∥^2+∥a[3]∥^2∥b[3]∥^2
+(∥a[1]∥^2∥b[2]∥^2+∥a[2]∥^2∥b[1]∥^2)
+(∥a[2]∥^2∥b[3]∥^2+∥a[3]∥^2∥b[2]∥^2)
+(∥a[3]∥^2∥b[1]∥^2+∥a[1]∥^2∥b[3]∥^2)
=(∥a[1]∥^2+∥a[2]∥^2+∥a[3]∥^2)(∥b[1]∥^2+∥b[2]∥^2+∥b[3]∥^2)
=tr(AA^*)tr(BB^*)