#OK to post homework #Nick Belov, Feb 16nd 2025, Assignment 8 read "C8.txt"; #1 for i from 1 to 3 do M := RHM(3,10): V := RSV(3,10): expVal1 := evalf(ProbDist(M,V)[3]): expVal2 := evalf(ExpMV(M,V)): print(expVal1,expVal2); od: print("-------------------------------"); #2 for t from 1 to 3 do V := RSV(2,100): M := PM(): s := evalf( ExpMV(M[1], V)^2 + ExpMV(M[2], V)^2 + ExpMV(M[3], V)^2 ); print(s); od: #3 EntanglementAlice := proc(V) local M, sum, i; M := PM(); sum := 0; for i from 1 to 3 do sum := sum + (ExpMV(TP(M[i], M[4]), V))^2; od; return sum; end: EntanglementBob := proc(V) local M, sum, i; M := PM(); sum := 0; for i from 1 to 3 do sum := sum + (ExpMV(TP(M[4], M[i]), V))^2; od; return sum; end: RandomProductState4 := proc(K) local a, b, productMatrix, productState; a := RSV(2, K): b := RSV(2, K): productMatrix := TP([a], [b]): productState := productMatrix[1]: return productState; end: minAlice := 1e10: maxAlice := -1e10: minAliceV := NULL: maxAliceV := NULL: minBob := 1e10: maxBob := -1e10: minBobV := NULL: maxBobV := NULL: for j from 1 to 20 do V := RSV(4,10): EA := evalf(EntanglementAlice(V)): EB := evalf(EntanglementBob(V)): if EA < minAlice then minAlice := EA: minAliceV := V: fi: if EA > maxAlice then maxAlice := EA: maxAliceV := V: fi: if EB < minBob then minBob := EB: minBobV := V: fi: if EB > maxBob then maxBob := EB: maxBobV := V: fi: od: print("Results over 20 random RSV(4,10) vectors:"): print(minAlice): print(minAliceV): print("For EntanglementBob:"): print(minBob): print(minBobV):