-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug: Bounding the entangled value of an extended nonlocal game #554
Comments
I would be happy to take on this task, let me explore what the problem is, whats the expected output if there is any if not let me go over the logic. Can you assign me the issue ? |
Thank you for your interest in this problem. The current output in the above code yields:
While the expected output as described above should be
That is, it doesn't make sense that the entangled lower bound is higher than the unentangled bound. Does that make sense? As for assignment, the way we are approaching things is that once you have successfully completed the issue, we will go ahead and assign the issue. So go ahead and dive in, and feel free to let me know if you have any questions!
|
Thank you, yeh, I am working on the code as we speak , The upper bound is lower than the lower bound which doesn't make sense, i am looking to see if the problem is in the way upper bound is calculated, will get back if I have any questions ! |
Sounds good! Don't hesitate to ask anything, and thank you again for your interest! |
@vprusso: Something tangential that came up while trying to understand this. Should the sub matrix blocks in
These direct NPA constraints (for k=1 at least) don't have any effect on this issue (comment out the whole construction and you'll get the same value.) |
Hey @atomgardner Thanks for your interest in this issue and for your comment. Hmm, as you said, this might be a different issue (as changing this doesn't seem to have a difference for k=1). My pre-coffee answer is that I believe that the indexing as it is would be correct, but to be transparent, another hacker put this together during a UnitaryHack of a prior year, so it's been a little while since I've reviewed the code. Indeed, the issue mentioned here might be related to this, but I'm not entirely sure. If your observation is correct though, another suspect line would, presumably, be the following: - old_sub_mat = r_var[old_i::dim, old_j::dim]
+ old_sub_mat = r_var[i*m:(i+1)*m, j*m:(j+1)*m] I do appreciate you looking into this as this issue in particular has been a really perplexing one for me, and any help, comments, or anything of the sort would be most appreciated! |
Interesting. OK. I see now that its pulling the (s,t) entry out of each sub-block—slick. |
@vprusso Season's greetings! I'm trying to learn some quantum computing and I jumped into the deep end. I tried some "obvious" things, like the termination condition of the inner loop in I double-checked the "4 in, 3 out" case from the documentation (success!). I'm currently looking at the lower bounds that Observation: many of the generated candidate lower bounds are in fact the expected answer of about Question: right now, the two
The |
Seasons greetings, @diffeo-christopher ! Definitely does seem as if you decided to jump into the deep end :) Let me begin by addressing your question. Yes, it seems awkward that the lower bound of the first optimization is completely ignored. While this is indeed misleading and likely should be refactored for clarity, the purpose of the two optimization problems is to perform an "alternating projection"-type approach where the measurement operators of one party are fixed (initially as random unitaries) and the second party has their measurements as variables in this problem to optimize over. Realistically, we can discard the initial lower bound value as what we care about are the optimized measurements. You'll notice as well that this same technique is also used. In So the tl;dr for the question is, yes, the lower bound value is discarded as we are really just after the measurements that are thrown into the second SDP and take the lower bound from that. Likely, we should replace Another thing I should mention is that the thesis listing you noted on Discord uses this logic in MATLAB to calculate the lower bound (here). You'll notice that the overall approach and technique are indeed similar. Presumably, the approach in So either there is some subtle difference in the way in which these approaches are being implemented or perhaps something more subtle syntactically between the implementations. Happy to help out with this one and to field any further questions you may have. Thanks again for your interest, and also happy to provide any specific recommendations to you if you are diving into the world of quantum! |
There appears to be a bug in how the entangled value of an extended nonlocal game is calculated. Here is a specific example:
Which yields the following output:
It holds that for extended nonlocal games that
unent <= ent_lb <= ent_ub <= ns
, so the fact thatent_ub < ent_lb
indicates that there is either a problem in thequantum_value_lower_bound
orcommuting_measurement_value_upper_bound
functions.The text was updated successfully, but these errors were encountered: