📜 ⬆️ ⬇️

How was Bell wrong (if the article gave the right example)

Not so long ago, this week, I stumbled upon a post three years ago. Here it is . If you read it carefully, you will stumble upon something that will anger you to the depths of your soul. Unless, of course, you understand what probability theory is. Speech about this passage:
“55.55% is the probability that the boxes will light up in the same color when we choose two doors at random, in accordance with the theory of hidden parameters.”

All my acquaintance with teverver literally screamed about the error. But there is a nuance ... I could be wrong too. So let's check!

As the author argues: we take one, any combination, and see what the probability of coincidence is.

As I reasoned: I simply add the probabilities of obtaining coincidence of the zeros (R) and 1 (G). And I get just 50%.

I will not give long reasonings, I will give a short one: If you threw a coin, then your first throw, as well as the second and any other, can in no way affect the next one. Any subsequent roll result has a 50/50 chance of falling out. And, as a result, the result of the match will be 50 to 50.
')
I am neither a professional mathematician, nor, moreover, a professional physicist. I'm just a programmer. Therefore, I could be wrong. And therefore I decided to check the result of my reasoning.

#define TESTMAX 1000000 struct ThreeWindowBox { bool m_Window[3]; }; float percent(int in) { return 100.0f *(((float)in) / (float)(TESTMAX)); } int main(int argc, char** argv) { //  Rand. int alls[2]; alls[0] = 0; alls[1] = 0; int compare = 0; ThreeWindowBox* allBoxes = new ThreeWindowBox[TESTMAX]; // . for (int i = 0; i < TESTMAX; i++) { for (int window = 0; window < 3; window++) { int tmp = rand() % 2; alls[tmp]++; allBoxes[i].m_Window[window] = tmp; } } //    for (int i = 0; i < TESTMAX; i++) { int wind1 = rand() % 3; int wind2 = rand() % 3; //   ! while(wind1 == wind2) wind2 = rand() % 3; if (allBoxes[i].m_Window[wind1] == allBoxes[i].m_Window[wind2]) compare++; } float perCompare = percent(compare); float perZero = percent(alls[0]) / 3; float perOne = percent(alls[1]) / 3; std::cout << perCompare << " " << perZero << " " << perOne; } 

For every fireman, I decided to check the rand function to ensure that there is no global superiority of any value over another. And the result is exactly what one would expect: 50.0251 49.9968 50.0032

What does this mean? This means that either the author of the article chose the wrong analogy, or Bell was mistaken, or the presence of a hidden parameter could not be detected by measurements.

P.S. If I did make a mistake, I’ll be happy to hear what exactly my mistake is.
P.P.S. Found the original Bella article
If I understand correctly, he does not consider coincident axes, but simply the probability of coincidence in different axes. And yes, there is the same mistake.
But ... I strongly lack the knowledge contained in the article itself. Therefore, if anyone can read and understand it, please explain it in accessible language.

P3.c
Ass crept from there, where I did not expect it. In principle, it was quite expected :-)
According to this article , the probabilities are not evenly distributed. Those. I was right for the case of 90 (270) degrees. And angles up to and more! And here it is, the catch: at an angle = 0, R will always fall out, and at 180 - always G.
And, according to the author, Bell said that, attention, a trick:
there are angles at which the condition
N [A +, B +] ≤ N [B–, C–] + N [A +, C +]
not performed.

where N [A +, B +] is the probability of R falling out in windows A, B
N [A +, C +] - probability of hitting R in windows A, C
N [B–, C–] - probability of G falling out in windows B, C

In this case, the angles for A, B, C - their own.

And I don’t know how to disprove / prove this from the point of view of hidden parameters, but all weekend is ahead!
Who wants to - join :-)

Source: https://habr.com/ru/post/329064/


All Articles