Here are the formulas used to calculate the response of a polarizer in local numerical simulations of Bell experiments.

- Particle Parameter : \(V\) is the hidden or common variable of the particle. It is in angular units.
- Local Parameter : \(R\) is the random rotation. It is in angular units.
- Global setting : \(n\) is an ad hoc parameter , an efficient integer between \(5\) and \(\infty\) . It can be considered as a number of elementary barriers
- Global setting : \(m\) is an ad hoc parameter . It can be considered as a number of attempts.

let \(\vartheta = V – R\)

Systematic tests gave some good triplets \((L,n,m)\).

- \(L\) renders good results between \(\pi/50\) and \(\pi/8\).
- \(n\) can take any value and is efficient since 5.
- \(m\) must adapt to \(n\).

Probability to render UP at each step in the polarizer :

\(p_{\uparrow} = \prod_{i=1}^{n}{{\cos({\vartheta}+{L \frac{2 i-n}{2 n}})}^{2}}\)

Probability to render DOWN at each step in the polarizer :

\(p_{\downarrow} = \prod_{i=1}^{n}{{\sin({\vartheta}+{L \frac{2 i-n}{2 n}})}^{2}}\)

Probability to fail and to try again :

\(p_0 = 1 – p_{\uparrow} – p_{\downarrow}\)

Final probability to render 1 after the whole polarization attempt :

#### \(P_1 = \frac{p_{\uparrow} p_0^{m}}{ \left(p_{\uparrow}+p_{\downarrow}\right)}\)

Final probability to render -1 after the whole polarization attempt :

#### \(P_{-1} = \frac{p_{\downarrow} p_0^{m}}{ \left(p_{\uparrow}+p_{\downarrow}\right)}\)

Final probability to render 0 for an undetected particle after the whole polarization attempt :

\(P_0 = 1 -P_1-P_{-1}\)

This hack describes quite correctly the experiments outcomes with this mechanism of attempts to pass through a classical potential barrier in \(m\) times maximum.

A C++ implementation is available for Windows and Linux, click on Download. This is also what is done with the online simulation,. You can see the javascript code in the browser but there will soon be a clean version without graphics.

#### Alternative with apparent elimination of the hidden variable

We may

- replace the hidden variable by a cyclic sequence on 180 or 360 and then need only a first synchronization.
- and take L = 0 to get sampler calculus with a tiny loss of quality

Here V is the previous one plus 1 modulo 180 or 360. It is in angular units.

This gives :

let \(\vartheta = V – R\)

Probability to render UP at each step in the polarizer :

\(p_{\uparrow} = \cos(\vartheta)^{2 n}\)

Probability to render DOWN at each step in the polarizer :

\(p_{\downarrow} = \sin(\vartheta)^{2 n}\)

Next step don’t change. This gives :

#### \(P_1 = \frac{{\cos(\vartheta)^{2 n}} ({1 – {\cos(\vartheta)^{2 n}} – {\sin(\vartheta)^{2 n}}})^{m}}{ {\cos(\vartheta)^{2 n}}+{\sin(\vartheta)^{2 n}}}\)

Performance is almost as good as above.

The **elimination is only apparent** because the algorithm deduces a common value from the origin to the current sequence. One could say that the variable is the time in a unit fine enough to make a modulo 360 usable. It’s not necessary ; it would introduce useless biases, strewn with pitfalls. Let’s keep in mind the need to have a random but shared hidden variable.

## Leave a Reply