No parece correcto en general. Código de Mathematica:
A = {{2, 1}, {1, 1}};
B = {{2, 2}, {2, 1}};
Print["SD(A) = ", Map[MatrixForm, SchurDecomposition[A // N]]]
Print["SD(B) = ", Map[MatrixForm, {u, t} = SchurDecomposition[B // N]]]
Print["B = ", u.t.Transpose[u] // MatrixForm]
Print["|B| = ", (B2 = u.Abs[t].Transpose[u]) // MatrixForm]
Print["SD(|B|) = ", Map[MatrixForm, SchurDecomposition[B2 // N]]]
Print["|A-B| = ", Norm[A - B, 2] // N]
Print["|A-|B|| = ", Norm[A - B2, 2]]
Print["|A-B| - |A-|B|| = ", Norm[A - B, 2] - Norm[A - B2, 2]]
produce la siguiente salida:
SD(A) = {(
0.850651 -0.525731
0.525731 0.850651
)
,
(
2.61803 0.
0. 0.381966
)
}
SD(B) = {(
0.788205 -0.615412
0.615412 0.788205
)
,
(
3.56155 0.
0. -0.561553
)
}
B = (
2. 2.
2. 1.
)
|B| = (
2.42536 1.45521
1.45521 1.69775
)
SD(|B|) = {(
0.788205 -0.615412
0.615412 0.788205
)
,
(
3.56155 0.
0. 0.561553
)}
|A-B| = 1.
|A-|B|| = 1.0367
|A-B| - |A-|B|| = -0.0367044
La norma es exactamente el que estás diciendo es, y A = |A| es positiva definida, por lo que no necesita computar |A|.
Un criterio simple es que si viajan, porque en ese caso, son simultáneamente orthonormally diagonalizable.
No veo un claro criterio para ambas direcciones. Si establecemos a_{11} = 2.04309043 en el ejemplo anterior, se obtiene \|A-B\| - \||A|-|B|\| \approx 6.15326 \cdot 10^{-9} y, más allá de eso, tenemos más positivos.
La definición de
A = \begin{bmatrix} x & 1 \\ 1 & 1 \end{bmatrix}, \quad B = \begin{bmatrix} 2 & 2 \\ 2 & 1 \end{bmatrix},
we get the following plots for f(x) := \|B\| - \||A|-|B|\|:
![Plot for f(x) for x in <1,2.1>]()
![Plot for f(x) for x in <-17,3>]()
The second one was made with |A| instead of , since deja de ser positiva definida.
He intentado buscar en los autovalores un poco, pero veo que no hay patrones útiles.