Как стать автором
Обновить

Комментарии 38

В оригинальной статье ничего не сказано про то что «Окна не должны совпадать». Они просто выбираются случайно. Можно случайно выбрать совпадающие. А вы этот случай исключаете, уменьшая вероятность совпадения цвета.
1. Если они открывают одну и ту же дверь на обоих коробках, лампочки горят всегда одним и тем же цветом.

2. Если они открывают двери двух коробок случайно, то один и тот же цвет появляется ровно в половине случаев.

Т.е. это не совпадающие дверцы.
«Подводя итог. В трети случаев коробки имеют одинаковые цвета, потому что мы выбрали одинаковые двери. Две трети времени мы выбираем разные двери, и в одной трети этих случаев мы получим один и тот же цвет».

Цитата из оригинальной статьи, которая говорит нам о том, что дверцы могут совпадать
Нет, по Беллу двери не могут совпадать. Он прямо рассматривает случаи разных осей и не смотрит на совпадающие.
https://cds.cern.ch/record/111654/files/vol1p195-200_001.pdf
matches = 0
attempts = 0 
for x in range(10000000):
    detect = [random.choice([True, False]) for _ in range(3)]
    if not any(detect) or all(detect):
        continue
    attempts += 1
    if random.choice(detect) == random.choice(detect):
        matches += 1
print(attempts, matches, matches/attempts)

Код симулирующий эксперимент из статьи.
Полученный результат: 7501076 4167267 0.5555558962474184


Проверка not any(detect) or all(detect) Исключает вариант, когда все 3 цвета выбраны одинаковыми, что не учитывалось в рассчёте из оригинальной статьи (без этой проверки результат равен 66%)

Вычисление вероятностей в статье, безусловно, верное.
Вызывает сомнение тот факт, что эксперимент показывает 50% в том случае, когда ответ «классического физика» равен 66% (то есть при выборе возможно совпадающих дверей, абсолютно случайных). Я не нашёл ссылку на научную публикацию, в которой подтверждалась бы такая вероятность, а просто оригиналу статьи (https://www.wired.com/2014/01/bells-theorem) я верю с трудом.
Во всех окнах может быть одно значение. (не забываем про физический смысл — проекция спина на три оси)
И да, меня смутило именно 66%.

П.с. нашел оригинальную статью Белла, ушел читать :-)
https://cds.cern.ch/record/111654/files/vol1p195-200_001.pdf
Белл всё это дело придумал достаточно давно, и вряд-ли всё мировое сообщество физиков не заметило бы столь простую ошибку. Скорее всего в статье приведён кривой пример.
Обязательно отпишитесь, когда дочитаете «оригинальную статью»!
Ну… как сказать… статья написана прямо по Беллу, по разделу «take for example».
И да, там настолько грубая ошибка.
И да, там не рассматриваются совпадающие окна(оси).
Две трети времени мы выбираем разные двери, и в одной трети этих случаев мы получим один и тот же цвет


пусть за первой дверью мы всегда видим R
тогда за двумя другими могут быть комбинации RR, RG, GG, GR.
так как вторую дверь для открывания мы выбираем случайно, то за ней мы увидим один из этих 8 цветов.
кол-во R и G равно — следовательно вероятность что мы увидим R как за первой дверью равно 50%

— где у меня ошибка?

или имелось в виду, что из 2/3 когда мы выбираем разные двери цвета совпадают в половине случаев, что составляет 1/3 от всех открываний?
У вас ошибка в том, что изначально предполагается наличие 2-х дверей разных цветов, то есть вариант RR отпадает
ок
но ведь если мы исключаем вариант RRR при открытии 2 случайных дверей, то они не будут составлять 2/3 всех случаев

то есть 1/3 (открываем одинаковые двери) + 6/8*2/3*1/3=1/6 (разные двери нет троек цветов) +2/8*2/3=1/6(тройки одинаковых цветов) итого = 2/3 (вероятность увидеть одинаковые цвета открывая случайные двери)

что логично — в каждой тройке есть как минимум пара одинаковых
а в квантовых экспериментах получается 1/2?
придется тоже почитать Белла на ночь
а в квантовых экспериментах получается 1/2?

Задаюсь тем же вопросом :)

Меня тоже это смутило сначала, на первый взгляд кажется что нет. Ниже обрисовал выкладки (нижняя половина комментария). Действительно, при определенной, причем очень конкретной, конфигурации осей измерения (в одной плоскости, с углом 120⁰ между осями) в квантовом случае получается 1/2. Но это не совсем очевидный факт, и оригинальная статья (которая трехлетняя) его увы никак не комментирует. Все усугубляется тем, что для любой другой (плоской) конфигурации осей получается больше 1/2.

У вас ошибка в рассуждениях. У меня как раз не исключаются одинаковые варианты, исключаются одинаковые оси. И все равно результат 1/2
Вообще, в статье, где стоит 55.55%, ошибка в определении условной вероятности. Там стоит 1/3+2/3*1/3, когда должно стоять 1/3+2/3*1/2, или 2/3==66.66%. А вот после того, как варианты RRR и GGG из рассмотрения выкинули, меняется условная вероятность совпадающего сигнала, и вот тогда правильный ответ все-таки 55.55%.
Там определена не вероятность вообще, а только для данной конкретной комбинации.
Дальше надо было сделать шаг вперед: определить вероятности совпадения 0 для всех комбинаций и сложить их с вероятностью совпадения 1 для всех комбинаций. И вот тогда-то мы и получаем те самые 50%, которые имеем в реальных экспериментах.

Я не привел всю цепочку рассуждений и вычислений в своей статье — она получается длинная и муторная.
Ничего не понимаю :) В первом пункте написано, что они могут открыть одну и ту же («первую» например) дверь на обоих коробках:
1. Если они открывают одну и ту же дверь на обоих коробках, лампочки горят всегда одним и тем же цветом.

Как из этого следует ваше:
Т.е. это не совпадающие дверцы.

?
Это следует напрямую из неравенств Белла.
P[a+b+] <= P[a+c+] + P[b-c-],
или, переводя на язык той статьи:
P[R1R2] <=P[R1R3] + P[G2G3]
Т.е. вероятность совпадения результатов в первом и втором окне в одной позиции всегда будет меньше или равно вероятности совпадения результатов в первом и третьем окне в той же позиции плюс вероятность совпадения результатов во втором и третьем окне в противоположной позиции.
Так же это следует и из рассматриваемых уравнений в самой статье.
Если вы внимательно будете смотреть на логику происходящего, то увидите, что рассматриваются комбинации одного окна с двумя другими, а не тремя другими.
Та логика, которую приводят в переведенной статье, является ошибочной, что я и указал.

А вот с логикой Белла надо разобраться. Сижу, курю теорвер вкупе с квантовой механикой… завораживает, аж спать не хоцца :-)
все ушли читать статью пятилетней давности…
пост пятилетней давности. Вот он:
geektimes.ru/post/225583

8 июня 2014 в 16:54

Как у вас там дела в 2019-м?
Упсссс… у меня было открыто несколько статьей по квантовой механике и я перепутал вкладки… сорри :-)
Да ну квантовая механика как раз в действии.

Нессиметричное течение времени.
Теория вероятности говорит о вероятности. Но нет доказательства в реальности, что это будет 66% или 55,55% потому что невозможно провести такой эксперимент в полностью изолированной системе. И на практике, с человеческим везением можно получить совершенно разные результаты даже в бесконечно долгий промежуток времени. Напишите программу и открывайте двери руками, а не программой. И увидите результат. Они у всех будут разные. По этому и существует только Теория относительности.
Именно поэтому я, беря миллион сравнений, получаю не 50% а целых 50.0251.
Именно из-за того, что это вероятности :-)
да, это машина, она достаточно точно отсчитывает нажатия, а человеческий мозг плохо работает с циклами. Это легко симулировать, сделать рекурсивный рандомайзер хотя бы глубиной в 3. И уже совсем все будет не так. Рандомайзеры сильно не случайные. Вернее они псевдослучайные.
Я отследил и это. Я смотрел сколько всего выпало 0 и 1 и вывел процент выпадения. 49.9968 50.0032
Это все правильно, но я говорил не об этом. Я говорил о том, что Белл, проведя эксперимент не ошибся, а получил такой результат в следствии его везения. Рассматривая и ваш эксперимент, каждый раз он был ошибкой, просто меньшей погрешности, чем у Белла.
Белл не проводил экспериментов, он рассуждал логически. И как раз в его рассуждения, возможно, закралась ошибка. Эксперименты проводили потом… Много-много раз, разными способами и разными людьми. Можете почитать об этом в английской вики.
https://en.wikipedia.org/wiki/Bell_test_experiments

Так что, вероятность ошибки ВСЕХ экспериментов ничтожно мала.
По этому и существует только Теория относительности.

Теория Относительности тут совсем непричём.
Теория вероятности говорит о вероятности.

И на практике, с человеческим везением можно получить совершенно разные результаты даже в бесконечно долгий промежуток времени.

Настоятельно советую ознакомиться с законом больших чисел, ну или просто почитать основы мат статистики. Получиться то всё может, но вероятность этого настолько ничтожно мала, что её никто не рассматривает.
Смотря ведь где не рассматривают. Смотря какая точность нужна. Если не учесть отклонение в 0,1 процент при старте ракеты, то можно ее лишится. Имеется виду, не процент направления, а скажем процент изгиба сопла.
И так же даже 5% в отклонении в детали автомобиля Ваз не играет не какой роли, если ее смогли продать до того, как это выяснилось.
«Пост трехлетней давности» на самом деле довольно опосредованно относится к оригинальной публикации Белла. Это некая «напальцевая иллюстрация», которая появилась уже сильно потом. В посте конечно косяк, но не там, где Вы его ищете.

Вероятности для «классического» случая правильные, в рамках допущений. И да, «случайно выбранные» оси могут совпадать. А вот квантовомеханическая вероятность для описанных условий никак не получается 1/2. Напротив, не меньше 7/9, если для любой пары векторов a, b, c скалярное произведение неотрицательно (т.е. угол между любыми векторами не больше π/2).
Это если я правильно вспомнил квантмех. Поскольку меня ему учили лет 10 назад, и с тех пор я про него почти не вспоминал, возможно я где-то напорол. Выкладки приводить не буду, ибо лень бороться с формулами.

P.S. Забыл уточнить. Считаем, вслед за Беллом, что векторы a,b,c лежат в одной плоскости. Иначе умеренно бессмысленно.
А, таки все же напорол, 1/2 получается, если углы между векторами 120⁰. И в силу симметрии предположение о равных вероятностях для «классического» расчета не кажется совсем уж взятым с потолка, хотя это и не принципиально.

В общем все же напишу выкладки, раз уж до меня дошло как интерпретировать эти дурацкие дверцы.


Есть источник запутанных частиц и два детектора, A и B, имеющих по три режима 1, 2, 3, соответствующих трем направлениям измерения:


  1. Вдоль некоторой оси z, θ = 0⁰
  2. Под углом 120⁰ к оси z, θ = 120⁰
  3. Под углом 240⁰ к оси z, θ = -120⁰

Иными словами, оси измерения расположены в форме буквы Y. Подчеркиваю, оси находятся в одной плоскости. Для простоты считаем, что эта плоскость перпендикулярна направлению падения частицы


Проводим серию измерений, причем в каждом измерении независимо выбираем режим каждого детектора с одинаковой вероятностью. Подчеркиваю, вариант, когда оси измерения на детекторах совпадают, выпадает с вероятностью 1/3*1/3*3 = 1/3.


Вариант со скрытыми параметрами ("классический") по сути означает, что результат измерения спина каждой частицы вдоль каждой оси заведомо определен. Всего 8 вариантов для каждой частицы. В нотации 1 = спин "вверх" (вдоль оси измерения), 0 = спин "вниз" (против оси измерения).


Кроме того, мы вполне уверены, и это экспериментально подтверждено, что измерение вдоль одной оси для запутанных частиц дает противонаправленные спины (иначе угловой момент вселенной не сохраняется).


Тогда со скрытыми параметрами имеем следующие варианты (в заголовке %детектор%%режим%, т.е. А1 например — это детектор А, режим 1):


 A1 | A2 | A3 | B1 | B2 | B3
----|----|----|----|----|----
 0  | 0  | 0  | 1  | 1  | 1 
 0  | 0  | 1  | 1  | 1  | 0
 0  | 1  | 0  | 1  | 0  | 1 
 0  | 1  | 1  | 1  | 0  | 0
 1  | 0  | 0  | 0  | 1  | 1 
 1  | 0  | 1  | 0  | 1  | 0
 1  | 1  | 0  | 0  | 0  | 1 
 1  | 1  | 1  | 0  | 0  | 0

Теперь, вероятность режима на каждом из детекторов 1/3. Посчитаем, какова вероятность того, что на одном детекторе будет 0, а на другом 1 для каждого из вариантов (для простоты можно просто посчитав комбинации):


 A1 | A2 | A3 | B1 | B2 | B3 | Вероятность
----|----|----|----|----|----|-------------
 0  | 0  | 0  | 1  | 1  | 1  | 1
 0  | 0  | 1  | 1  | 1  | 0  | 5/9
 0  | 1  | 0  | 1  | 0  | 1  | 5/9
 0  | 1  | 1  | 1  | 0  | 0  | 5/9
 1  | 0  | 0  | 0  | 1  | 1  | 5/9
 1  | 0  | 1  | 0  | 1  | 0  | 5/9
 1  | 1  | 0  | 0  | 0  | 1  | 5/9
 1  | 1  | 1  | 0  | 0  | 0  | 1

Ясно, что независимо от того, каковы вероятности каждого из вариантов, вероятность Πₚ того, что на одном детекторе 1, а на другом 0, не может быть меньше 5/9. Πₚ ≥ 5/9.


Теперь рассмотрим квантовомеханическую вероятность. Опуская строгий вывод, приведу напальцевое рассуждение.


Вполне очевидно, что для коллинеарных осей (θ = 0), вероятность получить разные результаты P(0) = 1 (поскольку спины противонаправлены при измерении вдоль одной оси).


Для антиколлинеарных осей (θ=180⁰), вероятность получить противоположные результаты P(180⁰) = 0 (поскольку спины противонаправлены при измерении вдоль одной оси, и противонаправленные оси всегда дают одинаковый результат).


Так же известно, что для ортогональных осей (θ = ±90⁰) спины независимы, то есть вероятность получить 0 или 1 на любом детекторе 1/2, и тогда вероятность что они не совпадут P(±90⁰) = 1/2.


Общая формула P(θ) = cos²(θ/2). Это можно показать строго, рассмотрев два измерения на одной частице, просто применив квантово-механический оператор проекции, но там вылезают матрицы, бра- и кет-векторы, в общем расписывать муторно.


Если режимы совпадают, оси совпадают, θ=0, вероятность получить противоположные результаты на детекторах P(0) = 1. Если же они не совпадают, то оси отличаются на θ = ±120⁰, P(±120⁰) = cos²(±120⁰/2) = cos²(±60⁰) = 1/4.


Рассмотрим варианты (в заголовке — детектор, в строке — режим):


 A | B | Вероятность
---|---|-------------
 1 | 1 | 1
 1 | 2 | 1/4
 1 | 3 | 1/4
 2 | 1 | 1/4
 2 | 2 | 1
 2 | 3 | 1/4
 3 | 1 | 1/4
 3 | 2 | 1/4
 3 | 3 | 1

Вероятность режима на одном детекторе 1/3, режимы независимы, вероятность конкретной комбинации режимов детекторов A и B 1/3*1/3=1/9, в результате вероятность получить разные результаты на детекторах, с учетом случайности режимов, Πₘ = (3 + 6/4)/9 = (3+3/2)/9 = (1 + 1/2)/3 = (3/2)/3 = 1/2.


Получаем, в варианте со скрытыми параметрами Πₚ ≥ 5/9, а в квантово-механическом Πₘ = 1/2 < 5/9. Πₘ < Πₚ Это можно проверить экспериментально.


У Белла углы не конкретизированы, поэтому там более общее рассуждение в ключе "можно выбрать такие углы, что будет значительная разница".


В итоге: все нормально в том посте трехлетней давности, прямых ошибок нет. Но автор несколько увлекся аллегориями, и в результате только нагнал туману. У Белла тем более все нормально.

Знаете, вы где-то ошиблись в первой части… Вот смотрите:

#define TESTMAX 1000000

struct ThreeWindowBox {
	bool m_Window[6];
};

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 < 6; 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 + 3;

		if (allBoxes[i].m_Window[wind1] == !allBoxes[i].m_Window[wind2])
			compare++;
	}

	float perCompare = percent(compare);
	float perZero = percent(alls[0]) / 6;
	float perOne = percent(alls[1]) / 6;

	std::cout << perCompare << " " << perZero << " " << perOne;
}


выдает следующие результаты:
49.9836 49.9976 50.0024
Упс, сорри, есть небольшая ошибка
Забыл, что генерируется не полностью случайная, а частично-случайная последовательность.
Вот теперь все норм, и совпадает с вашими расчетами:

#define TESTMAX 1000000

struct ThreeWindowBox {
	bool m_Window[6];
};

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;
			allBoxes[i].m_Window[window + 3] = !tmp;
		}
	}

	//А теперь ловим совпадения
	for (int i = 0; i < TESTMAX; i++) {
		int wind1 = rand() % 3;
		int wind2 = rand() % 3 + 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]) / 6;
	float perOne = percent(alls[1]) / 6;

	std::cout << perCompare << " " << perZero << " " << perOne;
}


66.6364 24.9984 25.0016

Да, "внутреннее состояние" одной частицы должно полностью определять "внутреннее состояние" второй, то есть случайных параметров у пары запутанных частиц получается на самом деле 3, а не 6. Иначе беда с угловым моментом вселенной :)


Честно говоря поленился подробно разбираться в Вашем коде (давно не трогал плюсы), но вот по идее более-менее эквивалентный код на питоне. Единственное, для простоты вместо того чтобы проверять неравенство бита и отрицания другого бита, я сравниваю, наоборот, равенство двух бит. Несложно показать, что это одно и то же (в булевой алгебре, ¬(A ≡ ¬B) ⇔ A ≡ ¬(¬B) ⇔ A ≡ B)


import random

ny = 0
nn = 0
nyprime = 0
nnprime = 0

for i in range(0,100000):
  a1 = random.choice([0,1])
  a2 = random.choice([0,1])
  a3 = random.choice([0,1])

  '''
  Внутреннее состояние одной частицы.
  У второй соответственно побитовое "не"
  '''
  s = [a1,a2,a3]

  '''
  Независимый выбор режимов детекторов
  '''
  v1 = random.choice(s)
  v2 = random.choice(s)

  '''
  Зависимый выбор, режимы не совпадают
  '''
  [v1prime, v2prime] = random.sample(s,2)

  '''
  v1 == v2 ⇔ v1 != not v2
  '''
  if v1 == v2:
    ny += 1
  else:
    nn += 1

  if v1prime == v2prime:
    nyprime += 1
  else:
    nnprime += 1

print('Независимые оси:', ny/(ny+nn),nn/(ny+nn))
print('Несовпадающие оси:', nyprime/(nyprime+nnprime),nnprime/(nyprime+nnprime))

Резульаты:


Независимые оси: 0.66798 0.33202
Несовпадающие оси: 0.50012 0.49988

Немножко теоретически-вероятностных выкладок, если уж возникли сомнения (на правах гимнастики для мозга):


Вероятности выше должны быть связяны отношением между независимыми осями P₁ и несовпадающими осями P₂ как
P₁ = 1/3 + 2/3*P₂
(поскольку совпадающие оси очевидно выпадают в 1/3 случаев)


А поскольку s у нас здесь выбирается с равномерным распределением (т.е. все варианты равновероятны), для P₂ получается 1/2 (ибо компоненты s независимы).


Если же компоненты s зависимы (т.е. распределение s неравномерно), то P₂ может быть больше или меньше, но не менее 1/3. Показать довольно просто.


Так как с точки зрения совпадения/различия двух разных бит, у s всего два варианта, xxx и xxt (t ≠ x), причем для первого из них вероятность совпадения Pₓₓₓ = 1, то достаточно прикинуть вероятность совпадения Pₓₓₜ для второго:


Pₓₓₜ = 1/3*1/2 + 1/3*1/2 + 1/3*0 = 1/3 (Σ вероятность выпадения i-го бита * вероятность выпадения бита с тем же значением из двух оставшихся).


В таком варианте P₂ = α Pₓₓₓ + (1 – α) Pₓₓₜ, 0 ≤ α ≤ 1, P₂ = α (Pₓₓₓ – Pₓₓₜ) + Pₓₓₜ => Pₓₓₜ ≤ P₂ ≤ Pₓₓₓ. Тогда P₂ ≥ 1/3 и P₁ ≥ 5/9.


Можно отметить, что вариант равномерного распределения s соответствует α = 2/8 = 1/4.


Собственно получить эти 5/9 в программе можно запретив состояния s=000 и s=111 (α = 0).

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории