Init and final.

This commit is contained in:
Adamo 2020-12-23 16:45:08 -05:00
commit 7873ce2360
22 changed files with 5700 additions and 0 deletions

View File

@ -0,0 +1,19 @@
ℋ❙φ❭ = (𝓍𝓎 + 𝓏)❙φ❭ = E❙φ❭.
𝓍𝓎 = (P²𝓍 + P²𝓎)/(2μ) + ½ μω² (X² + Y²).
𝓏 = P²𝓏/2μ.
❙φ❭ = ❙φ𝓏𝓎❭ ⛒ ❙φ𝓏❭.
ℋ𝓍𝓎❙φ❭ = E𝓍𝓎❙φ❭.
E = E𝓍𝓎 + E𝓏.
❬z❙φ𝓏❭ = (2πħ)⁻¹ exp(ιp𝓏z/ħ).
E𝓏 = p𝓏²/2μ where p𝓏 is an arbitrary real constant.
= 𝓍𝓎𝓏.

BIN
classbfs120904402944051.pdf Normal file

Binary file not shown.

30
griffiths/3.7 Normal file
View File

@ -0,0 +1,30 @@
3.7
Suppose f and g are eigenfunctions of Q, with eigenvalue q. Show any linear combination of f and g are eigenfunctions of Q with eigenvalue q.
|Qf> = q|f>
|Qg> = w|g>
A and B are (possibly complex) constants.
|Q(A*f+B*g)> = A|Qf> + B|Qg> = Aq|f> + Bq|g>
= q(A|f> + B|g>).
QED
Check that f(x)=exp(x) and g(x)=exp(-x) are eigenfunctions of the operator d^2/dx^2, with the same eigenvalue. construct two linear combiations of f and g that are orthogonal eigenfunctions on the interval [-1,1]
if Q = d^2/dx^2 then we have the differential equation
f'' = qf
(e^x)'' = e^x, so this is an eigenfunction with q=1.
(e^-x)'' = e^-x, so this is an eigenfunction with q=1.
e^x + e^-x is also an eigenfunction of q, per earlier proof, and so is e^x - e^-x. These functions are just 2*sinh and 2*cosh, which are orthogonal functions because sinh is odd and cosh is even.

21
griffiths/3.8 Normal file
View File

@ -0,0 +1,21 @@
3.8
a)
check that the eigenvalues of the hermitian operator in example 3.1 are real. show that the eigenfunctions are orthogonal.
Qf = if'
the eigenvalues are 0,+- 1, etc., which are obviously real.
pick two arbitrary eigenfunctions:
f = A exp(-i q phi)
g = A exp(-i q' phi)
<f|g> = A*A int[exp(i q phi) exp(-i q' phi)] dphi[0,2pi]
= A*A int[exp(i (q - q') phi)] dphi[0,2pi]
= A*A [i(q-q')]^-1 [exp(i(q-q') phi)]|[0,2pi]

BIN
hw/12/H12.pdf Normal file

Binary file not shown.

127
hw/12/HW12.motes Normal file
View File

@ -0,0 +1,127 @@
𝓗𝓍𝓎 = ½ (-∇² + ρ²).
ρ² = x² + y² and ħ = m = ω = 1.
Griffith's Eq. 2.71:
Hₙ₊₁(ξ) = 2ξ Hₙ(ξ) - 2n Hₙ₋₁(ξ)
In 2D cartesian coordinates, the del operator is defined
∇f = [∂/∂x f, ∂/∂y f].
∇²f = ∇⋅∇f = ∇⋅[∂/∂x f, ∂/∂y f]
= ∂²/∂x² f + ∂²/∂y² f.
∴ ∇² = ∂²/∂²x + ∂²/∂²y.
Then,
𝓗𝓍𝓎 = ½ (-(∂²/∂²x + ∂²/∂²y) + (x² + y²)).
𝓗𝓍𝓎 = ½ (-(∂²/∂²x + ∂²/∂²y) + (x² + y²))
= ½ (x² - ∂²/∂²x + y² - ∂²/∂²y)
= ½(x² - ∂²/∂²x) + ½(y² - ∂²/∂²y).
𝓗𝓍 + 𝓗𝓎 = ½(x² - ∂²/∂²x) + ½(y² - ∂²/∂²y).
The Schrodinger Equation then reads,
[½(x² - ∂²/∂²x) + ½(y² - ∂²/∂²y)] Ψ = (E𝓍 + E𝓎) Ψ.
Assuming a separable solution Ψ(x,y) = X(x) Y(y), with E = E𝓍 + E𝓎.
[½(x² - ∂²/∂²x) + ½(y² - ∂²/∂²y)] X(x) Y(y) = (E𝓍 + E𝓎) X(x) Y(y).
½(x² - ∂²/∂²x) X(x) Y(y) + ½(y² - ∂²/∂²y) X(x) Y(y)
= (E𝓍 + E𝓎) X(x) Y(y).
[1/X(x)] [½(x² - ∂²/∂²x) X(x)] + [1/Y(y)] [½(y² - ∂²/∂²y) Y(y)]
= (E𝓍 + E𝓎).
So, I have two differential equations,
½(x² - ∂²/∂²x) X(x) = E𝓍 X(x), and
½(y² - ∂²/∂²y) Y(y) = E𝓎 Y(y).
The solutions to these differential equations are the same as for the 1D harmonic oscillator. They have eigenvalues (n + 1/2), where ħ = ω = 1, with n = 0,1,2,... .
∴ the eigenvalues for the combined operator are n𝓍 + n𝓎 + 1.
The degeneracy is pretty obvious, just from counting the possibilities: there is n+1 degeneracy for each value of n = n𝓍 + n𝓎.
So,
n degeneracy
─────────────────
0 1
1 2
2 3
3 4
4 5
5 6
The Hermite polynomials help to generate the eigenstates of this:
Hₙ(x) = (-1)ⁿ exp(x²) d/dxⁿ exp(-x²/2) = (2x - d/dx)ⁿ * 1.
The first six polynomials are
H₀(x) = 1.
H₁(x) = 2x.
H₂(x) = 4x² - 2.
H₃(x) = 8x³ - 12x.
H₄(x) = 16x⁴ - 48x² + 12.
H₅(x) = 32x⁵ - 160x³ + 120x.
H₆(x) = 64x⁶ - 480x⁴ + 720x² - 120.
The wave functions involving these polynomials, with the unitizations given in the intro, are
Ψₙₘ(x) = π^(-1/4) 1/√(2ⁿ n!) Hₙ(x) exp(-x²/2)
π^(-1/4) 1/√(2ᵐ m!) Hₘ(y) exp(-y²/2).
Ψₙₘ(x) = 1/√π 1/√(2ⁿ n! 2ᵐ m!) Hₙ(x) Hₘ(y) exp(-(x²/2 + y²/2)).
For n = {1,...,∞}, the lowest possible energy is 3, and this level has no degeneracy.
For additional levels,
a𝓍 = 1/√2(x + ιp𝓍)
a𝓎 = 1/√2(y + ιp𝓎)
=======
The lowering operators are
a𝓍 = 1/√2 (x + ιp𝓍) and
a𝓎 = 1/√2 (y + ιp𝓎).
They are not hermitian, but x,y and p𝓍,p𝓎 are, so the raising operators are
a𝓍 = 1/√2 (x - ιp𝓍) and
a𝓎 = 1/√2 (y - ιp𝓎).
Applying these to the ground state ❙00❭, I can find the first six states, with normalization:
a𝓍❙00❭ = 1/√2 (x - ιp𝓍)❙00❭
= 1/√2 (x❙00❭ - ιp𝓍❙00❭)
b) & c)
I'm still working out the algebra, here. I will try to finish it as soon as I can, but I know I also have new work to do.
I finished much of this assignment, but need to get done faster in the future.

3883
hw/12/HW12.motes.ps Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

BIN
hw/12/othoulrich_hw12.pdf Normal file

Binary file not shown.

BIN
hw/hw14.pdf Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

BIN
presentation/Document.docx Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,43 @@
#include <vector>
struct spin {bool up; bool down;}
struct entangled_spin {bool up_1; bool up_2; bool down_1; bool down_2; }
struct state { double prob_up; double prob_down; }
struct entangled_state {}
spin measure (particle measured) {
}
int main(int argc, char const *argv[])
{
std::vector<spin> v;
spin electron_spin;
spin positron_spin;
\\ uncorrelated measurements
for (int trial=1; trial<=1000; trial++) {
particle positron;
particle electron;
measure_spin(positron)
}
\\ entangled measurements
for (int trial=1; trial<=1000; trial++) {
entangled_pair pair = new entangled_pair(
particle position,
particle electron);
measure_spin(positron)
}
return 0;
//=============================================================================

564
presentation/notebook.tex Normal file
View File

@ -0,0 +1,564 @@
% Default to the notebook output style
% Inherit from the specified cell style.
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
% Nicer default font (+ math font) than Computer Modern for most use cases
\usepackage{mathpazo}
% Basic figure setup, for now with no caption control since it's done
% automatically by Pandoc (which extracts ![](path) syntax from Markdown).
\usepackage{graphicx}
% We will generate all images so they have a width \maxwidth. This means
% that they will get their normal width if they fit onto the page, but
% are scaled down if they would overflow the margins.
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
\else\Gin@nat@width\fi}
\makeatother
\let\Oldincludegraphics\includegraphics
% Set max figure width to be 80% of text width, for now hardcoded.
\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=.8\maxwidth]{#1}}
% Ensure that by default, figures have no caption (until we provide a
% proper Figure object with a Caption API and a way to capture that
% in the conversion process - todo).
\usepackage{caption}
\DeclareCaptionLabelFormat{nolabel}{}
\captionsetup{labelformat=nolabel}
\usepackage{adjustbox} % Used to constrain images to a maximum size
\usepackage{xcolor} % Allow colors to be defined
\usepackage{enumerate} % Needed for markdown enumerations to work
\usepackage{geometry} % Used to adjust the document margins
\usepackage{amsmath} % Equations
\usepackage{amssymb} % Equations
\usepackage{textcomp} % defines textquotesingle
% Hack from http://tex.stackexchange.com/a/47451/13684:
\AtBeginDocument{%
\def\PYZsq{\textquotesingle}% Upright quotes in Pygmentized code
}
\usepackage{upquote} % Upright quotes for verbatim code
\usepackage{eurosym} % defines \euro
\usepackage[mathletters]{ucs} % Extended unicode (utf-8) support
\usepackage[utf8x]{inputenc} % Allow utf-8 characters in the tex document
\usepackage{fancyvrb} % verbatim replacement that allows latex
\usepackage{grffile} % extends the file name processing of package graphics
% to support a larger range
% The hyperref package gives us a pdf with properly built
% internal navigation ('pdf bookmarks' for the table of contents,
% internal cross-reference links, web links for URLs, etc.)
\usepackage{hyperref}
\usepackage{longtable} % longtable support required by pandoc >1.10
\usepackage{booktabs} % table support for pandoc > 1.12.2
\usepackage[inline]{enumitem} % IRkernel/repr support (it uses the enumerate* environment)
\usepackage[normalem]{ulem} % ulem is needed to support strikethroughs (\sout)
% normalem makes italics be italics, not underlines
% Colors for the hyperref package
\definecolor{urlcolor}{rgb}{0,.145,.698}
\definecolor{linkcolor}{rgb}{.71,0.21,0.01}
\definecolor{citecolor}{rgb}{.12,.54,.11}
% ANSI colors
\definecolor{ansi-black}{HTML}{3E424D}
\definecolor{ansi-black-intense}{HTML}{282C36}
\definecolor{ansi-red}{HTML}{E75C58}
\definecolor{ansi-red-intense}{HTML}{B22B31}
\definecolor{ansi-green}{HTML}{00A250}
\definecolor{ansi-green-intense}{HTML}{007427}
\definecolor{ansi-yellow}{HTML}{DDB62B}
\definecolor{ansi-yellow-intense}{HTML}{B27D12}
\definecolor{ansi-blue}{HTML}{208FFB}
\definecolor{ansi-blue-intense}{HTML}{0065CA}
\definecolor{ansi-magenta}{HTML}{D160C4}
\definecolor{ansi-magenta-intense}{HTML}{A03196}
\definecolor{ansi-cyan}{HTML}{60C6C8}
\definecolor{ansi-cyan-intense}{HTML}{258F8F}
\definecolor{ansi-white}{HTML}{C5C1B4}
\definecolor{ansi-white-intense}{HTML}{A1A6B2}
% commands and environments needed by pandoc snippets
% extracted from the output of `pandoc -s`
\providecommand{\tightlist}{%
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}}
% Add ',fontsize=\small' for more characters per line
\newenvironment{Shaded}{}{}
\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{{#1}}}}
\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.56,0.13,0.00}{{#1}}}
\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
\newcommand{\CharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
\newcommand{\StringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textit{{#1}}}}
\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{{#1}}}
\newcommand{\AlertTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{{#1}}}}
\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.02,0.16,0.49}{{#1}}}
\newcommand{\RegionMarkerTok}[1]{{#1}}
\newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{{#1}}}}
\newcommand{\NormalTok}[1]{{#1}}
% Additional commands for more recent versions of Pandoc
\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.53,0.00,0.00}{{#1}}}
\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.73,0.40,0.53}{{#1}}}
\newcommand{\ImportTok}[1]{{#1}}
\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.73,0.13,0.13}{\textit{{#1}}}}
\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.10,0.09,0.49}{{#1}}}
\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{{#1}}}}
\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.40,0.40,0.40}{{#1}}}
\newcommand{\BuiltInTok}[1]{{#1}}
\newcommand{\ExtensionTok}[1]{{#1}}
\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.74,0.48,0.00}{{#1}}}
\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.49,0.56,0.16}{{#1}}}
\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
% Define a nice break command that doesn't care if a line doesn't already
% exist.
\def\br{\hspace*{\fill} \\* }
% Math Jax compatability definitions
\def\gt{>}
\def\lt{<}
% Document parameters
\title{Entanglement}
% Pygments definitions
\makeatletter
\def\PY@reset{\let\PY@it=\relax \let\PY@bf=\relax%
\let\PY@ul=\relax \let\PY@tc=\relax%
\let\PY@bc=\relax \let\PY@ff=\relax}
\def\PY@tok#1{\csname PY@tok@#1\endcsname}
\def\PY@toks#1+{\ifx\relax#1\empty\else%
\PY@tok{#1}\expandafter\PY@toks\fi}
\def\PY@do#1{\PY@bc{\PY@tc{\PY@ul{%
\PY@it{\PY@bf{\PY@ff{#1}}}}}}}
\def\PY#1#2{\PY@reset\PY@toks#1+\relax+\PY@do{#2}}
\expandafter\def\csname PY@tok@ss\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@gp\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,0.50}{##1}}}
\expandafter\def\csname PY@tok@go\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.53,0.53,0.53}{##1}}}
\expandafter\def\csname PY@tok@vm\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@gd\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.63,0.00,0.00}{##1}}}
\expandafter\def\csname PY@tok@si\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.73,0.40,0.53}{##1}}}
\expandafter\def\csname PY@tok@nv\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@gs\endcsname{\let\PY@bf=\textbf}
\expandafter\def\csname PY@tok@cp\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.74,0.48,0.00}{##1}}}
\expandafter\def\csname PY@tok@sr\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.40,0.53}{##1}}}
\expandafter\def\csname PY@tok@gi\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.63,0.00}{##1}}}
\expandafter\def\csname PY@tok@s1\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@nl\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.63,0.63,0.00}{##1}}}
\expandafter\def\csname PY@tok@m\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@na\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.49,0.56,0.16}{##1}}}
\expandafter\def\csname PY@tok@c1\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@kc\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@nd\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.67,0.13,1.00}{##1}}}
\expandafter\def\csname PY@tok@sd\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@il\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@sc\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@nf\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,1.00}{##1}}}
\expandafter\def\csname PY@tok@kr\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@mo\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@mb\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@cpf\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@mf\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@o\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@mi\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@gu\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.50,0.00,0.50}{##1}}}
\expandafter\def\csname PY@tok@mh\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
\expandafter\def\csname PY@tok@no\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.53,0.00,0.00}{##1}}}
\expandafter\def\csname PY@tok@kn\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@nb\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@ne\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.82,0.25,0.23}{##1}}}
\expandafter\def\csname PY@tok@w\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.73,0.73}{##1}}}
\expandafter\def\csname PY@tok@vi\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@ni\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.60,0.60,0.60}{##1}}}
\expandafter\def\csname PY@tok@sx\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@s2\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@c\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@gr\endcsname{\def\PY@tc##1{\textcolor[rgb]{1.00,0.00,0.00}{##1}}}
\expandafter\def\csname PY@tok@dl\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@kt\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.69,0.00,0.25}{##1}}}
\expandafter\def\csname PY@tok@k\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@gt\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.27,0.87}{##1}}}
\expandafter\def\csname PY@tok@bp\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@vc\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@vg\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.10,0.09,0.49}{##1}}}
\expandafter\def\csname PY@tok@gh\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,0.50}{##1}}}
\expandafter\def\csname PY@tok@kp\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@nc\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,1.00}{##1}}}
\expandafter\def\csname PY@tok@err\endcsname{\def\PY@bc##1{\setlength{\fboxsep}{0pt}\fcolorbox[rgb]{1.00,0.00,0.00}{1,1,1}{\strut ##1}}}
\expandafter\def\csname PY@tok@nn\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,1.00}{##1}}}
\expandafter\def\csname PY@tok@nt\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@sb\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@ch\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@sh\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@fm\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.00,0.00,1.00}{##1}}}
\expandafter\def\csname PY@tok@ow\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.67,0.13,1.00}{##1}}}
\expandafter\def\csname PY@tok@s\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\expandafter\def\csname PY@tok@ge\endcsname{\let\PY@it=\textit}
\expandafter\def\csname PY@tok@cs\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@kd\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.00,0.50,0.00}{##1}}}
\expandafter\def\csname PY@tok@se\endcsname{\let\PY@bf=\textbf\def\PY@tc##1{\textcolor[rgb]{0.73,0.40,0.13}{##1}}}
\expandafter\def\csname PY@tok@cm\endcsname{\let\PY@it=\textit\def\PY@tc##1{\textcolor[rgb]{0.25,0.50,0.50}{##1}}}
\expandafter\def\csname PY@tok@sa\endcsname{\def\PY@tc##1{\textcolor[rgb]{0.73,0.13,0.13}{##1}}}
\def\PYZbs{\char`\\}
\def\PYZus{\char`\_}
\def\PYZob{\char`\{}
\def\PYZcb{\char`\}}
\def\PYZca{\char`\^}
\def\PYZam{\char`\&}
\def\PYZlt{\char`\<}
\def\PYZgt{\char`\>}
\def\PYZsh{\char`\#}
\def\PYZpc{\char`\%}
\def\PYZdl{\char`\$}
\def\PYZhy{\char`\-}
\def\PYZsq{\char`\'}
\def\PYZdq{\char`\"}
\def\PYZti{\char`\~}
% for compatibility with earlier versions
\def\PYZat{@}
\def\PYZlb{[}
\def\PYZrb{]}
\makeatother
% Exact colors from NB
\definecolor{incolor}{rgb}{0.0, 0.0, 0.5}
\definecolor{outcolor}{rgb}{0.545, 0.0, 0.0}
% Prevent overflowing lines due to hard-to-break entities
\sloppy
% Setup hyperref package
\hypersetup{
breaklinks=true, % so long urls are correctly broken across lines
colorlinks=true,
urlcolor=urlcolor,
linkcolor=linkcolor,
citecolor=citecolor,
}
% Slightly bigger margins than the latex defaults
\geometry{verbose,tmargin=1in,bmargin=1in,lmargin=1in,rmargin=1in}
\begin{document}
\maketitle
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}1}]:} \PY{c+c1}{\PYZsh{} EPR Paradox Example}
\PY{c+c1}{\PYZsh{} A neutral pi meson (pi0) decays into an electron/positron (e\PYZhy{}/e+) }
\PY{c+c1}{\PYZsh{} pair.}
\PY{c+c1}{\PYZsh{} pi0 \PYZhy{}\PYZhy{}\PYZgt{} e+ + e\PYZhy{} (electron\PYZhy{}positron pair)}
\PY{c+c1}{\PYZsh{} pi0 has angular momentum l = s = 0}
\PY{c+c1}{\PYZsh{} Align electron and positron detectors in opposite directions.}
\PY{c+c1}{\PYZsh{} | pi0 |}
\PY{c+c1}{\PYZsh{} |e\PYZhy{} \PYZlt{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{} \PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZgt{} e+|}
\PY{c+c1}{\PYZsh{} Where hbar = 1, the measurement of the spin in some direction is }
\PY{c+c1}{\PYZsh{} +/\PYZhy{}1 with spin state [1 0] (up) or [0 1] (down).}
\PY{c+c1}{\PYZsh{} The Pauli exclusion principle with conserved angular momentum 0}
\PY{c+c1}{\PYZsh{} dictates this system must be in the singlet state }
\PY{c+c1}{\PYZsh{} chi = [1/sqrt(2) (|up+\PYZgt{}|down\PYZhy{}\PYZgt{} \PYZhy{} |down+\PYZgt{}|up\PYZhy{}\PYZgt{})].}
\PY{c+c1}{\PYZsh{} In this state, if the positron is measured to have spin [1 0], the }
\PY{c+c1}{\PYZsh{} electron must have spin [0 1], or vice versa. There is an equal }
\PY{c+c1}{\PYZsh{} probability to find either state during the first measurement.}
\PY{c+c1}{\PYZsh{} This view is consistent with the realist view. The realist view could }
\PY{c+c1}{\PYZsh{} hold that the electron and position had those angular momenta }
\PY{c+c1}{\PYZsh{} from creation.}
\PY{c+c1}{\PYZsh{} EPR assumes influences cannot propagate faster than the speed of }
\PY{c+c1}{\PYZsh{} light. \PYZdq{}Wave function collapse\PYZdq{} is apparently instantaneous, however.}
\PY{k+kn}{import} \PY{n+nn}{numpy} \PY{k}{as} \PY{n+nn}{np}
\PY{k+kn}{import} \PY{n+nn}{matplotlib}
\PY{k+kn}{import} \PY{n+nn}{matplotlib}\PY{n+nn}{.}\PY{n+nn}{pyplot} \PY{k}{as} \PY{n+nn}{plt}
\PY{k+kn}{import} \PY{n+nn}{matplotlib}\PY{n+nn}{.}\PY{n+nn}{patches} \PY{k}{as} \PY{n+nn}{mpatches}
\PY{o}{\PYZpc{}}\PY{k}{matplotlib} inline
\end{Verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}2}]:} \PY{c+c1}{\PYZsh{} If information about the measurement of the wave function propagated}
\PY{c+c1}{\PYZsh{} at a finite speed, the particles could conceivably be measured such}
\PY{c+c1}{\PYZsh{} that both are equally likely to hold either spin up or spin down.}
\PY{c+c1}{\PYZsh{} What would happen if the measurements were uncorrelated?}
\PY{n}{plt}\PY{o}{.}\PY{n}{hist}\PY{p}{(}\PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{randint}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{,}\PY{l+m+mi}{1000}\PY{p}{)}\PY{p}{,}\PY{n}{bins}\PY{o}{=}\PY{l+m+mi}{4}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{hist}\PY{p}{(}\PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{randint}\PY{p}{(}\PY{l+m+mi}{3}\PY{p}{,}\PY{l+m+mi}{5}\PY{p}{,}\PY{l+m+mi}{1000}\PY{p}{)}\PY{p}{,}\PY{n}{bins}\PY{o}{=}\PY{l+m+mi}{4}\PY{p}{)}
\PY{n}{elepatch} \PY{o}{=} \PY{n}{mpatches}\PY{o}{.}\PY{n}{Patch}\PY{p}{(}\PY{n}{color}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{blue}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,} \PY{n}{label}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{e\PYZhy{}}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{n}{pospatch} \PY{o}{=} \PY{n}{mpatches}\PY{o}{.}\PY{n}{Patch}\PY{p}{(}\PY{n}{color}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{orange}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,} \PY{n}{label}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{e+}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{c+c1}{\PYZsh{}plt.legend(handles=[elepatch,pospatch])}
\PY{n}{plt}\PY{o}{.}\PY{n}{text}\PY{p}{(}\PY{l+m+mf}{0.5}\PY{p}{,}\PY{l+m+mi}{565}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{e\PYZhy{}}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{size}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{text}\PY{p}{(}\PY{l+m+mf}{3.5}\PY{p}{,}\PY{l+m+mi}{565}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{e+}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{size}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{suptitle}\PY{p}{(}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{Uncorrelated Spins}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{fontsize}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{ylim}\PY{p}{(}\PY{p}{[}\PY{l+m+mi}{400}\PY{p}{,}\PY{l+m+mi}{600}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xlim}\PY{p}{(}\PY{p}{[}\PY{o}{\PYZhy{}}\PY{l+m+mi}{1}\PY{p}{,}\PY{l+m+mi}{5}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xticks}\PY{p}{(}\PY{p}{[}\PY{l+m+mf}{0.125}\PY{p}{,}\PY{l+m+mf}{0.85}\PY{p}{,}\PY{l+m+mf}{3.125}\PY{p}{,}\PY{l+m+mf}{3.85}\PY{p}{]}\PY{p}{,}\PY{p}{[}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{down}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{up}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{down}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{up}\PY{l+s+s2}{\PYZdq{}}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{tick\PYZus{}params}\PY{p}{(}\PY{n}{axis}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{both}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,}\PY{n}{labelsize}\PY{o}{=}\PY{l+m+mi}{15}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{show}\PY{p}{(}\PY{p}{)}
\end{Verbatim}
\begin{center}
\adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{output_1_0.png}
\end{center}
{ \hspace*{\fill} \\}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}3}]:} \PY{c+c1}{\PYZsh{} How many violations of angular momentum would be measured?}
\PY{c+c1}{\PYZsh{} From running several simulations, it\PYZsq{}s evident a violation in the }
\PY{c+c1}{\PYZsh{} conservation of angular momentum would be measured half of the time.}
\PY{c+c1}{\PYZsh{} We can conclude that the information that the entangled particles are in}
\PY{c+c1}{\PYZsh{} orthogonal spin states is instantaneously agreed once a measurement}
\PY{c+c1}{\PYZsh{} is made.}
\PY{n}{violations} \PY{o}{=} \PY{l+m+mi}{0}
\PY{k}{for} \PY{n}{trial} \PY{o+ow}{in} \PY{n+nb}{range}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{1000}\PY{p}{)}\PY{p}{:}
\PY{n}{elespin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{randint}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{)}
\PY{n}{posspin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{randint}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{)}
\PY{k}{if} \PY{n}{elespin} \PY{o}{==} \PY{l+m+mi}{0}\PY{p}{:}
\PY{n}{elespin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{0 1}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{k}{else}\PY{p}{:}
\PY{n}{elespin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{1 0}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{k}{if} \PY{n}{posspin} \PY{o}{==} \PY{l+m+mi}{0}\PY{p}{:}
\PY{n}{posspin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{0 1}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{k}{else}\PY{p}{:}
\PY{n}{posspin} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{1 0}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{n}{elespin}\PY{o}{.}\PY{n}{transpose}\PY{p}{(}\PY{p}{)}
\PY{n}{posspin}\PY{o}{.}\PY{n}{transpose}\PY{p}{(}\PY{p}{)}
\PY{n}{chi\PYZus{}squared} \PY{o}{=} \PY{n}{elespin}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{1; 0}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}\PY{o}{*}\PY{n}{posspin}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{0; 1}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)} \PY{o}{\PYZhy{}} \PY{n}{posspin}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{1; 0}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}\PY{o}{*}\PY{n}{elespin}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{matrix}\PY{p}{(}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{0; 1}\PY{l+s+s1}{\PYZsq{}}\PY{p}{)}
\PY{k}{if} \PY{n}{chi\PYZus{}squared} \PY{o}{==} \PY{l+m+mi}{0}\PY{p}{:}
\PY{n}{violations} \PY{o}{=} \PY{n}{violations} \PY{o}{+} \PY{l+m+mi}{1}
\PY{n}{zeroes} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{zeros}\PY{p}{(}\PY{n}{violations}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{ones} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{full}\PY{p}{(}\PY{p}{(}\PY{l+m+mi}{1000}\PY{o}{\PYZhy{}}\PY{n}{violations}\PY{p}{)}\PY{p}{,}\PY{l+m+mi}{1}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{result} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{concatenate}\PY{p}{(}\PY{p}{(}\PY{n}{ones}\PY{p}{,}\PY{n}{zeroes}\PY{p}{)}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{ylim}\PY{p}{(}\PY{p}{[}\PY{l+m+mi}{400}\PY{p}{,}\PY{l+m+mi}{600}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xlim}\PY{p}{(}\PY{p}{[}\PY{o}{\PYZhy{}}\PY{l+m+mi}{1}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xticks}\PY{p}{(}\PY{p}{[}\PY{l+m+mf}{0.125}\PY{p}{,}\PY{l+m+mf}{0.85}\PY{p}{]}\PY{p}{,}\PY{p}{[}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{violation}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{adherence}\PY{l+s+s2}{\PYZdq{}}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{tick\PYZus{}params}\PY{p}{(}\PY{n}{axis}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{both}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,}\PY{n}{labelsize}\PY{o}{=}\PY{l+m+mi}{15}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{suptitle}\PY{p}{(}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{Conservation Violations}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{fontsize}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{hist}\PY{p}{(}\PY{p}{[}\PY{n}{result}\PY{p}{]}\PY{p}{,}\PY{n}{bins}\PY{o}{=}\PY{l+m+mi}{4}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{figure}\PY{p}{(}\PY{p}{)}
\end{Verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{outcolor}Out[{\color{outcolor}3}]:} <matplotlib.figure.Figure at 0x7f22020419e8>
\end{Verbatim}
\begin{center}
\adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{output_2_1.png}
\end{center}
{ \hspace*{\fill} \\}
\begin{verbatim}
<matplotlib.figure.Figure at 0x7f22020419e8>
\end{verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}4}]:} \PY{c+c1}{\PYZsh{} Bell\PYZsq{}s Experiment took this a step further, to rule out locality }
\PY{c+c1}{\PYZsh{} completely. Establish the detectors to \PYZdq{}float\PYZdq{} such that they }
\PY{c+c1}{\PYZsh{} measure the components of the spins of the electron and positron }
\PY{c+c1}{\PYZsh{} along a unit vector a or b, with angles phi\PYZus{}a and phi\PYZus{}b, }
\PY{c+c1}{\PYZsh{} respectively. Compute a product P of the spins in units of hbar/2. }
\PY{c+c1}{\PYZsh{} This will give +/\PYZhy{}1. }
\PY{c+c1}{\PYZsh{} / pi0 \PYZbs{}}
\PY{c+c1}{\PYZsh{} /e\PYZhy{} \PYZlt{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{} \PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZhy{}\PYZgt{} e+\PYZbs{}}
\PY{c+c1}{\PYZsh{} QM predicts P(a,b) = \PYZhy{}a dot b, the expectation value of the product }
\PY{c+c1}{\PYZsh{} of the spins.}
\PY{c+c1}{\PYZsh{} In 1964, Bell derived the Bell inequality for a local hidden variable}
\PY{c+c1}{\PYZsh{} theory: abs(P(a,b) \PYZhy{} P(a,c)) \PYZlt{}= 1 + P(b,c)}
\PY{c+c1}{\PYZsh{} For any local hidden variable theory, the Bell inequality must hold. }
\PY{c+c1}{\PYZsh{} It introduces a third unit vector c, which is any other unit vector }
\PY{c+c1}{\PYZsh{} than a or b.}
\PY{c+c1}{\PYZsh{} Does the quantum mechanical prediction violate the Bell inequality?}
\PY{c+c1}{\PYZsh{} Testing several detector configurations in a plane, systematically }
\PY{c+c1}{\PYZsh{} from 0 to pi, we determine whether the QM prediction is consistent }
\PY{c+c1}{\PYZsh{} with a local hidden variable theory.}
\PY{n}{violations} \PY{o}{=} \PY{l+m+mi}{0}
\PY{n}{trials} \PY{o}{=} \PY{l+m+mi}{0}
\PY{k}{for} \PY{n}{step\PYZus{}a} \PY{o+ow}{in} \PY{n+nb}{range}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{6}\PY{p}{)}\PY{p}{:}
\PY{k}{for} \PY{n}{step\PYZus{}b} \PY{o+ow}{in} \PY{n+nb}{range} \PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{6}\PY{p}{)}\PY{p}{:}
\PY{n}{phi\PYZus{}a} \PY{o}{=} \PY{n}{step\PYZus{}a}\PY{o}{/}\PY{l+m+mi}{6}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{pi}
\PY{n}{phi\PYZus{}b} \PY{o}{=} \PY{n}{step\PYZus{}b}\PY{o}{/}\PY{l+m+mi}{6}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{pi}
\PY{n}{phi\PYZus{}c} \PY{o}{=} \PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{l+m+mf}{0.5}\PY{o}{*}\PY{n}{phi\PYZus{}b}
\PY{n}{P\PYZus{}ab} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}b}\PY{p}{)}
\PY{n}{P\PYZus{}ac} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}c}\PY{p}{)}
\PY{n}{P\PYZus{}bc} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}b} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}c}\PY{p}{)}
\PY{n}{bell\PYZus{}lhs} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{abs}\PY{p}{(}\PY{n}{P\PYZus{}ab} \PY{o}{\PYZhy{}} \PY{n}{P\PYZus{}ac}\PY{p}{)}
\PY{n}{bell\PYZus{}rhs} \PY{o}{=} \PY{l+m+mi}{1} \PY{o}{+} \PY{n}{P\PYZus{}bc}
\PY{k}{if} \PY{n}{bell\PYZus{}lhs} \PY{o}{\PYZgt{}} \PY{n}{bell\PYZus{}rhs}\PY{p}{:}
\PY{n}{violations} \PY{o}{=} \PY{n}{violations} \PY{o}{+} \PY{l+m+mi}{1}
\PY{n}{trials} \PY{o}{=} \PY{n}{trials} \PY{o}{+} \PY{l+m+mi}{1}
\PY{n}{zeroes} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{zeros}\PY{p}{(}\PY{n}{violations}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{ones} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{full}\PY{p}{(}\PY{p}{(}\PY{n}{trials}\PY{o}{\PYZhy{}}\PY{n}{violations}\PY{p}{)}\PY{p}{,}\PY{l+m+mi}{1}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{result} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{concatenate}\PY{p}{(}\PY{p}{(}\PY{n}{ones}\PY{p}{,}\PY{n}{zeroes}\PY{p}{)}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{ylim}\PY{p}{(}\PY{p}{[}\PY{n}{trials}\PY{o}{/}\PY{l+m+mi}{2}\PY{o}{\PYZhy{}}\PY{l+m+mi}{10}\PY{p}{,}\PY{n}{trials}\PY{o}{/}\PY{l+m+mi}{2}\PY{o}{+}\PY{l+m+mi}{10}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xlim}\PY{p}{(}\PY{p}{[}\PY{o}{\PYZhy{}}\PY{l+m+mi}{1}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xticks}\PY{p}{(}\PY{p}{[}\PY{l+m+mf}{0.125}\PY{p}{,}\PY{l+m+mf}{0.85}\PY{p}{]}\PY{p}{,}\PY{p}{[}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{violation}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{adherence}\PY{l+s+s2}{\PYZdq{}}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{tick\PYZus{}params}\PY{p}{(}\PY{n}{axis}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{both}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,}\PY{n}{labelsize}\PY{o}{=}\PY{l+m+mi}{15}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{suptitle}\PY{p}{(}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{Hidden Locality Violations}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{fontsize}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{hist}\PY{p}{(}\PY{p}{[}\PY{n}{result}\PY{p}{]}\PY{p}{,}\PY{n}{bins}\PY{o}{=}\PY{l+m+mi}{4}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{figure}\PY{p}{(}\PY{p}{)}
\end{Verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{outcolor}Out[{\color{outcolor}4}]:} <matplotlib.figure.Figure at 0x7f22020737f0>
\end{Verbatim}
\begin{center}
\adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{output_3_1.png}
\end{center}
{ \hspace*{\fill} \\}
\begin{verbatim}
<matplotlib.figure.Figure at 0x7f22020737f0>
\end{verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}5}]:} \PY{c+c1}{\PYZsh{} It is seen that the QM prediction disagrees with a local hidden }
\PY{c+c1}{\PYZsh{} variable theory in a significant number of configurations.}
\PY{c+c1}{\PYZsh{} On average, for random orientations between 0 and pi, how often? }
\PY{c+c1}{\PYZsh{} After running several trials, it appears to be about half of the, }
\PY{c+c1}{\PYZsh{} which is what one would expect from the quantum mechanical}
\PY{c+c1}{\PYZsh{} prediction.}
\PY{n}{violations} \PY{o}{=} \PY{l+m+mi}{0}
\PY{n}{trials} \PY{o}{=} \PY{l+m+mi}{0}
\PY{k}{for} \PY{n}{rand\PYZus{}a} \PY{o+ow}{in} \PY{n+nb}{range}\PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{10}\PY{p}{)}\PY{p}{:}
\PY{k}{for} \PY{n}{rand\PYZus{}b} \PY{o+ow}{in} \PY{n+nb}{range} \PY{p}{(}\PY{l+m+mi}{0}\PY{p}{,}\PY{l+m+mi}{10}\PY{p}{)}\PY{p}{:}
\PY{n}{phi\PYZus{}a} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{rand}\PY{p}{(}\PY{l+m+mi}{1}\PY{p}{)}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{pi}
\PY{n}{phi\PYZus{}b} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{random}\PY{o}{.}\PY{n}{rand}\PY{p}{(}\PY{l+m+mi}{1}\PY{p}{)}\PY{o}{*}\PY{n}{np}\PY{o}{.}\PY{n}{pi}
\PY{n}{phi\PYZus{}c} \PY{o}{=} \PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{l+m+mf}{0.5}\PY{o}{*}\PY{n}{phi\PYZus{}b}
\PY{n}{P\PYZus{}ab} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}b}\PY{p}{)}
\PY{n}{P\PYZus{}ac} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}a} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}c}\PY{p}{)}
\PY{n}{P\PYZus{}bc} \PY{o}{=} \PY{o}{\PYZhy{}}\PY{l+m+mi}{1} \PY{o}{*} \PY{n}{np}\PY{o}{.}\PY{n}{cos}\PY{p}{(}\PY{n}{phi\PYZus{}b} \PY{o}{\PYZhy{}} \PY{n}{phi\PYZus{}c}\PY{p}{)}
\PY{n}{bell\PYZus{}lhs} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{abs}\PY{p}{(}\PY{n}{P\PYZus{}ab} \PY{o}{\PYZhy{}} \PY{n}{P\PYZus{}ac}\PY{p}{)}
\PY{n}{bell\PYZus{}rhs} \PY{o}{=} \PY{l+m+mi}{1} \PY{o}{+} \PY{n}{P\PYZus{}bc}
\PY{k}{if} \PY{n}{bell\PYZus{}lhs} \PY{o}{\PYZgt{}} \PY{n}{bell\PYZus{}rhs}\PY{p}{:}
\PY{n}{violations} \PY{o}{=} \PY{n}{violations} \PY{o}{+} \PY{l+m+mi}{1}
\PY{n}{trials} \PY{o}{=} \PY{n}{trials} \PY{o}{+} \PY{l+m+mi}{1}
\PY{n}{zeroes} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{zeros}\PY{p}{(}\PY{n}{violations}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{ones} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{full}\PY{p}{(}\PY{p}{(}\PY{n}{trials}\PY{o}{\PYZhy{}}\PY{n}{violations}\PY{p}{)}\PY{p}{,}\PY{l+m+mi}{1}\PY{p}{,}\PY{n}{dtype}\PY{o}{=}\PY{n+nb}{int}\PY{p}{)}
\PY{n}{result} \PY{o}{=} \PY{n}{np}\PY{o}{.}\PY{n}{concatenate}\PY{p}{(}\PY{p}{(}\PY{n}{ones}\PY{p}{,}\PY{n}{zeroes}\PY{p}{)}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{ylim}\PY{p}{(}\PY{p}{[}\PY{n}{trials}\PY{o}{/}\PY{l+m+mi}{2}\PY{o}{\PYZhy{}}\PY{l+m+mi}{10}\PY{p}{,}\PY{n}{trials}\PY{o}{/}\PY{l+m+mi}{2}\PY{o}{+}\PY{l+m+mi}{10}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xlim}\PY{p}{(}\PY{p}{[}\PY{o}{\PYZhy{}}\PY{l+m+mi}{1}\PY{p}{,}\PY{l+m+mi}{2}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{xticks}\PY{p}{(}\PY{p}{[}\PY{l+m+mf}{0.125}\PY{p}{,}\PY{l+m+mf}{0.85}\PY{p}{]}\PY{p}{,}\PY{p}{[}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{violation}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{adherence}\PY{l+s+s2}{\PYZdq{}}\PY{p}{]}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{tick\PYZus{}params}\PY{p}{(}\PY{n}{axis}\PY{o}{=}\PY{l+s+s1}{\PYZsq{}}\PY{l+s+s1}{both}\PY{l+s+s1}{\PYZsq{}}\PY{p}{,}\PY{n}{labelsize}\PY{o}{=}\PY{l+m+mi}{15}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{suptitle}\PY{p}{(}\PY{l+s+s2}{\PYZdq{}}\PY{l+s+s2}{Hidden Locality Violations}\PY{l+s+s2}{\PYZdq{}}\PY{p}{,}\PY{n}{fontsize}\PY{o}{=}\PY{l+m+mi}{20}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{hist}\PY{p}{(}\PY{p}{[}\PY{n}{result}\PY{p}{]}\PY{p}{,}\PY{n}{bins}\PY{o}{=}\PY{l+m+mi}{4}\PY{p}{)}
\PY{n}{plt}\PY{o}{.}\PY{n}{figure}\PY{p}{(}\PY{p}{)}
\end{Verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{outcolor}Out[{\color{outcolor}5}]:} <matplotlib.figure.Figure at 0x7f220202b080>
\end{Verbatim}
\begin{center}
\adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{output_4_1.png}
\end{center}
{ \hspace*{\fill} \\}
\begin{verbatim}
<matplotlib.figure.Figure at 0x7f220202b080>
\end{verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}6}]:} \PY{c+c1}{\PYZsh{} The prediction (Bell\PYZsq{}s inequality) made by assuming a local hidden}
\PY{c+c1}{\PYZsh{} variable is violated by a significant number of the possibile }
\PY{c+c1}{\PYZsh{} bborientations. This simulation cannot determine which theory is}
\PY{c+c1}{\PYZsh{} correct, but the QM prediction has been confirmed through experiment.}
\PY{c+c1}{\PYZsh{} No hidden local variable holds actionable information about the }
\PY{c+c1}{\PYZsh{} state. Entangled states retain their entanglement in a non\PYZhy{}local }
\PY{c+c1}{\PYZsh{} nature.}
\end{Verbatim}
\begin{Verbatim}[commandchars=\\\{\}]
{\color{incolor}In [{\color{incolor}7}]:} \PY{n}{plt}\PY{o}{.}\PY{n}{show}\PY{p}{(}\PY{p}{)}
\end{Verbatim}
% Add a bibliography block to the postdoc
\end{document}

BIN
presentation/output_1_0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
presentation/output_2_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

BIN
presentation/output_3_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
presentation/output_4_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

View File

@ -0,0 +1,70 @@
Three viewpoints: realist, orthodox, agnostic
// |phi_1> |phi_2>
For parallel detectors:
P(a,b) = -1
arbitrary orientation:
P(a,b) = -a⋅b
Our understanding of entanglement is consistent with the idea that modern local variables
A(a,λ) = ±1.
B(b,λ) = ±1.
If detectors are aligned:
A(a,λ) = -B(b,λ).
Average of product of measurements
P(a,b) = ∫ ρ(λ) A(a,λ) B(b,λ) dλ
but since A(a,λ) = -B(b,λ),
P(a,b) = - ∫ ρ(λ) A(a,λ) A(b,λ) dλ
c is any other unit vector...
P(a,b) - P(a,c) = - ∫ ρ(λ) [ A(a,λ) A(b,λ) - A(a,λ) A(c,λ) ] dλ
= - ∫ ρ(λ) [ 1 - A(a,λ) A(c,λ) ] A(a,λ) A(b,λ) dλ
Because A(a,λ) = ±1 and B(b,λ) = ±1,
-1 ≤ [A(a,λ) A(b,λ)] ≤ +1.
ρ(λ) [1 - A(b,λ) A(c,λ)] ≥ 0, so
│P(a,b) - P(a,c)│ ≤ ∫ ρ(λ) [1 - A(B,λ) A(c,λ)] dλ.
│P(a,b) - P(a,c)│ ≤ 1 + P(b,c)
simulation:
pion decays, leaving two particles
each particle has a spin state

207
presentation/simulation.py Normal file
View File

@ -0,0 +1,207 @@
# EPR Paradox Example
# A pion (pi0) decays into an electron/positron (e-/e+) pair.
# pi0 --> e+ + e- (electron-positron pair)
# pi0 has angular momentum l = 0
# Align electron and positron detectors in opposite directions.
# | pi0 |
# |e- <------ ------> e+|
# Where hbar = 1, the measurement of the spin in some direction is either
# [1 0] or [0 1].
# Pauli exclusion principle with conserved angular momentum l=0 says this
# system must be in the singlet state
# chi = [1/sqrt(2) (|up+>|down-> - |down+>|up->)].
# In this state, if the positron is measured to have spin up, the electron
# must have spin down, or vice versa. There is an equal probability to
# measure either spin by the first measurement.
# This view is consistent with the realist view. The realist view could hold
# that the electron and position had those angular momenta from creation.
# EPR assumes influences cannot propagate faster than the speed of light.
# "Wave function collapse" is instantaneous.
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
# If information about the measurement of the wave function propagated
# at a finite speed, the particles could conceivably be measured such
# that both are equally likely to hold either spin up or spin down.
# What would happen if the measurements were uncorrelated?
plt.ylim([400,600])
plt.xlim([-1,5])
plt.xticks([0.125,0.85,3.125,3.85],["down","up","down","up"])
plt.tick_params(axis='both',labelsize=15)
plt.hist(np.random.randint(0,2,1000),bins=4)
plt.hist(np.random.randint(3,5,1000),bins=4)
elepatch = mpatches.Patch(color='blue', label='e-')
pospatch = mpatches.Patch(color='orange', label='e+')
plt.legend(handles=[elepatch,pospatch])
plt.figure()
# On average, how many violations of angular momentum would be measured?
# Clearly, a violation in angular momentum would be measured half of the time.
# We can conclude that the information that the entangled particles are in
# the opposite spin states of eachother is instantaneously known once
# a measurement is made.
violations = 0
for trial in range(0,1000):
elespin = np.random.randint(0,2)
posspin = np.random.randint(0,2)
if elespin == 0:
elespin = np.matrix('0 1')
else:
elespin = np.matrix('1 0')
if posspin == 0:
posspin = np.matrix('0 1')
else:
posspin = np.matrix('1 0')
elespin.transpose()
posspin.transpose()
chi_squared = elespin*np.matrix('1; 0')*posspin*np.matrix('0; 1') - posspin*np.matrix('1; 0')*elespin*np.matrix('0; 1')
if chi_squared == 0:
violations = violations + 1
zeroes = np.zeros(violations,dtype=int)
ones = np.full((1000-violations),1,dtype=int)
result = np.concatenate((ones,zeroes))
plt.ylim([400,600])
plt.xlim([-1,2])
plt.xticks([0.125,0.85],["violation","adherence"])
plt.tick_params(axis='both',labelsize=15)
plt.suptitle("Conservation Violations",fontsize=20)
plt.hist([result],bins=4)
plt.figure()
# Bell's Experiment took this a step further, to rule out locality completely.
# Establish the detectors to "float" such that they measure the components of
# the spins of the electron and positron along a unit vector a or b, with
# angles phi_a and phi_b, respectively. Compute a product P of the spins in
# units of hbar/2. This will give +/-1.
# / pi0 \
# /e- <------ ------> e+\
# QM predicts P(a,b) = -a dot b, the expectation value of the product of
# the spins.
# In 1964, Bell derived the Bell inequality for a local hidden variable
# theory: abs(P(a,b) - P(a,c)) <= 1 + P(b,c)
# For any local hidden variable theory, the Bell inequality must hold. It
# introduces a third unit vector c, which is any other unit vector than
# a or b.
# Does the quantum mechanical prediction violate the Bell inequality? Testing
# several detector configurations in a plane, systematically from 0 to pi,
# we determine whether the QM prediction is consistent with a local hidden
# variable theory.
violations = 0
trials = 0
for step_a in range(0,6):
for step_b in range (0,6):
phi_a = step_a/6*np.pi
phi_b = step_b/6*np.pi
phi_c = phi_a - 0.5*phi_b
P_ab = -1 * np.cos(phi_a - phi_b)
P_ac = -1 * np.cos(phi_a - phi_c)
P_bc = -1 * np.cos(phi_b - phi_c)
bell_lhs = np.abs(P_ab - P_ac)
bell_rhs = 1 + P_bc
if bell_lhs > bell_rhs:
violations = violations + 1
trials = trials + 1
zeroes = np.zeros(violations,dtype=int)
ones = np.full((trials-violations),1,dtype=int)
result = np.concatenate((ones,zeroes))
plt.ylim([trials/2-10,trials/2+10])
plt.xlim([-1,2])
plt.xticks([0.125,0.85],["violation","adherence"])
plt.tick_params(axis='both',labelsize=15)
plt.suptitle("Hidden Locality Violations",fontsize=20)
plt.hist([result],bins=4)
plt.figure()
# It is seen that the QM prediction disagrees with a local hidden variable
# theory in a significant number of configurations.
# On average, for random orientations between 0 and pi, how often? After running several trials,
# it appears to be about half of the time.
violations = 0
trials = 0
for rand_a in range(0,10):
for rand_b in range (0,10):
phi_a = np.random.rand(1)*np.pi
phi_b = np.random.rand(1)*np.pi
phi_c = phi_a - 0.5*phi_b
P_ab = -1 * np.cos(phi_a - phi_b)
P_ac = -1 * np.cos(phi_a - phi_c)
P_bc = -1 * np.cos(phi_b - phi_c)
bell_lhs = np.abs(P_ab - P_ac)
bell_rhs = 1 + P_bc
if bell_lhs > bell_rhs:
violations = violations + 1
trials = trials + 1
zeroes = np.zeros(violations,dtype=int)
ones = np.full((trials-violations),1,dtype=int)
result = np.concatenate((ones,zeroes))
plt.ylim([trials/2-10,trials/2+10])
plt.xlim([-1,2])
plt.xticks([0.125,0.85],["violation","adherence"])
plt.tick_params(axis='both',labelsize=15)
plt.suptitle("Hidden Locality violations",fontsize=20)
plt.hist([result],bins=4)
plt.figure()
# The prediction (Bell's inequality) made by assuming a local hidden
# variable is violated by a significant number of the possibile orientations.
# This simulation cannot determine which theory is correct, but the QM
# prediction has been confirmed through experiment. No hidden local variable
# holds actionable information about the state. Entangled states retain
# their entanglement in a non-local nature.

BIN
recursion.pdf Normal file

Binary file not shown.