Is there any way to fix or revise this code to find the EXACT optimal bound, and could anyone help find the EXACT optimal bound? Thanks.
generateRandomUnitVector[] := Normalize[RandomReal[{-1, 1}, 5]];
deleteRowsCols[mat_, {i_, j_}] := Module[{dim},
dim = Length[mat];
Part[mat, Complement[Range[dim], {i, j}], Complement[Range[dim], {i, j}]]
];
findMinimalUpperBound[numSamples_] := Module[{minEigenValuesList = {}, x, y, z, M, subMatrices, minEigenValues},
For[n = 1, n <= numSamples, n++,
x = generateRandomUnitVector[];
y = generateRandomUnitVector[];
z = generateRandomUnitVector[];
M = x.x\[Transpose] + y.y\[Transpose] + z.z\[Transpose];
subMatrices = Table[deleteRowsCols[M, {i, j}], {i, 1, 5}, {j, i + 1, 5}];
minEigenValues = Min[Table[Min[Eigenvalues[subMatrices[[i, j - i]]]], {i, 1, 4}, {j, i + 1, 5}]];
AppendTo[minEigenValuesList, minEigenValues];
];
Max[minEigenValuesList]
];
minimalUpperBound = findMinimalUpperBound[1000];
minimalUpperBound
(The above code defines a function to generate random unit vectors in R^5 and Function to delete ith and jth rows and columns from a matrix, ...)
Eigenvalues[Real[]]
Can you do exactly what I did and verify that? And then can you modify your code so that it displays what I assume is supposed to be a non-exact optimal bound and show the result that you got from your example code? Thanks $\endgroup$