@@ -62,7 +62,7 @@ def ring_problem(n: int) -> InflationProblem:
6262ring_SDP = InflationSDP (prob , verbose = 2 , include_all_outcomes = False )
6363
6464
65- ring_SDP .generate_relaxation ("physical2" , max_monomial_length = 2 )
65+ ring_SDP .generate_relaxation ("physical" )
6666# ring_SDP.generate_relaxation("npa1")
6767
6868print ("Quantum inflation **nonfanout/commuting** factors:" )
@@ -72,17 +72,31 @@ def ring_problem(n: int) -> InflationProblem:
7272# # # print(ring_4_SDP.momentmatrix)
7373# # #
7474
75- # Inputting values
76- known_values = {}
77- known_values ["P[A^{1,2}=0]" ] = 1 / 4
78- known_values ["P[A^{1,2}=0 A^{2,3}=0]" ] = 1 / 8
79- known_values ["P[A^{1,2}=0 A^{2,3}=1]" ] = 1 / 24
80- known_values ["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=0]" ] = 1 / 8
81- known_values ["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=1]" ] = 1 / 64
82- known_values ["P[A^{1,2}=0 A^{2,3}=1 A^{3,1}=2]" ] = 1 / 48
83- print ("Known Values:" )
84- print (known_values )
85-
86- ring_SDP .update_values (known_values )
87- ring_SDP .solve (solve_dual = False )
75+
76+ # # Inputting values
77+ # known_values = {"0": 0, "1": 1}
78+ # known_values["P[A^{1,2}=0]"] = 1 / 4
79+ # known_values["P[A^{1,2}=0 A^{2,3}=0]"] = 1 / 8
80+ # known_values["P[A^{1,2}=0 A^{2,3}=1]"] = 1 / 24
81+ # known_values["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=0]"] = 1 / 8
82+ # known_values["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=1]"] = 1 / 64
83+ # known_values["P[A^{1,2}=0 A^{2,3}=1 A^{3,1}=2]"] = 1 / 48
84+ # print("Known Values:")
85+ # print(known_values)
8886#
87+ # ring_SDP.update_values(known_values)
88+ # ring_SDP.solve(solve_dual=False)
89+
90+ from inflation import max_within_feasible
91+ from sympy import Symbol
92+
93+ v = Symbol ("v" )
94+ known_values_symbolic = {"0" : 0 , "1" : 1 }
95+ known_values_symbolic ["P[A^{1,2}=0]" ] = 1 / 4
96+ known_values_symbolic ["P[A^{1,2}=0 A^{2,3}=0]" ] = v / 8 + (1 - v )/ 16
97+ known_values_symbolic ["P[A^{1,2}=0 A^{2,3}=1]" ] = v / 24 + (1 - v )/ 16
98+ known_values_symbolic ["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=0]" ] = v / 8 + (1 - v )/ 64
99+ known_values_symbolic ["P[A^{1,2}=0 A^{2,3}=0 A^{3,1}=1]" ] = 1 / 64
100+ known_values_symbolic ["P[A^{1,2}=0 A^{2,3}=1 A^{3,1}=2]" ] = v / 48 + (1 - v )/ 64
101+ max_vis = max_within_feasible (ring_SDP , known_values_symbolic , "dual" )
102+ print ("Maximum visibility: " , max_vis )
0 commit comments