CHSH Inequality#

The CHSH scenario consists of two nonsignaling devices which share randomness in the classical case and entanglement in the quantum case.

../../_images/bipartite_non-signaling.png

Bipartite Non-Signaling Scenario.#

The set of classical behaviors is bound by the CHSH inequality [Clauser1969]

\[I_{CHSH} := \left \vert\sum_{x,y=0}^1 (-1)^{x\cdot y}\langle A_xB_y \rangle\right \vert \leq 2,\]

where \(\langle A_xB_y \rangle = \text{Tr}[(A_x\otimes B_y )\rho^{AB}]\) is a bipartite correlator for dichotomic observables \(A_x\) and \(B_y\) with eigenvalues \(\pm 1\). Quantum entanglement yields a maximal CHSH score of of \(I_{CHSH}=\leq \beta^Q_{CHSH} = 2\sqrt{2}\) [Cirelson1980].

qnetvo.chsh_inequality_cost_fn(network_ansatz, parallel=False, **qnode_kwargs)[source]#

Constructs a cost function for maximizing the score against the CHSH Bell inequality. This inequality is defined as

\[I_{CHSH} = \sum_{x,y\in\{0,1\}}(-1)^{x\cdot y}\langle A_x B_y \rangle\]

where \(\langle A_x B_y \rangle = \sum_{a,b\in\{-1,1\}} a\cdot b P(a,b|x,y)\) is the two-body correlator between dichotomic observables \(A_x\) and \(B_y\).

Parameters:
  • network_ansatz (NetworkAnsatz) – A NetworkAnsatz class specifying the quantum network simulation.

  • parallel (optional bool) – If True, remote qnode executions are made in parallel web requests.

  • qnode_kwargs (optional dict) – Keyword arguments used only for pennylane.qnode construction.

Returns:

A cost function evaluated as cost(*network_settings) where the network_settings are obtained from the provided network_ansatz class.

qnetvo.parallel_chsh_grad_fn(network_ansatz, natural_grad=False, **qnode_kwargs)[source]#

Constructs a parallelizeable gradient function grad_fn for the CHSH cost.

The parallelization is achieved through multithreading and intended to improve the efficiency of remote qnode execution.

The natural gradient

\[\nabla_{ng}I_{CHSH}(\vec{\theta}):= g^{-1}(\vec{\theta})\nabla I_{CHSH}(\vec{\theta})\]

scales the euclidean gradient \(\nabla\) by the pseudo-inverse of the Fubini-Study metric tensor \(g^{-1}(\vec{\theta})\). The natural gradient of the \(-I_{CHSH}(\vec{\theta})\) cost function is evaluated directly as

\[\begin{split}-\nabla_{ng}I_{CHSH}(\vec{\theta}) &= -\nabla_{ng}\sum_{x,y=0}^1 (-1)^{x \wedge y}\langle A_x B_y\rangle(\vec{\theta}_{x,y}) \\ &= -\sum_{x,y=0}^1 (-1)^{x \wedge y}\nabla_{ng}\langle A_x B_y \rangle(\vec{\theta_{x,y}}) \\ &= -\sum_{x,y=0}^1(-1)^{x \wedge y}g^{-1}(\vec{\theta}_{x,y})\nabla\langle A_x B_y \rangle(\vec{\theta}_{x,y})\end{split}\]

where \(\langle A_x B_y \rangle(\vec{\theta}_{x,y})\) is the expectation value of observables \(A_x\) and \(B_y\) parameterized by the settings \(\vec{\theta}_{x,y}\).

Parameters:
  • network_ansatz (NetworkAnsatz) – The ansatz describing the network for which the CHSH inequality considered.

  • natural_grad (optional Bool) – If True, then the natural gradient is evaluated. Default False.

  • qnode_kwargs (optional dict) – A keyword argument passthrough to qnode construction.

Returns:

A parallelized (multithreaded) gradient function grad_fn(*network_settings).

Return type:

function

Warning

Parallel gradient computation is flaky on PennyLane v0.28+. Intermittent failures may occur.

References#

[Clauser1969]

Clauser, John F., et al. “Proposed experiment to test local hidden-variable theories.” Physical review letters 23.15 (1969): 880.

[Cirelson1980]

Cirel’son, Boris S. “Quantum generalizations of Bell’s inequality.” Letters in Mathematical Physics 4.2 (1980): 93-100.