Measure operation

Performs a joint measurement of one or more qubits in the specified Pauli bases, such that the output result is given by the distribution \begin{align} \Pr(\texttt{Zero} | \ket{\psi}) = \frac12 \braket{ \psi \mid| \left( \boldone + P_0 \otimes P_1 \otimes \cdots \otimes P_N \right) \mid| \psi }, \end{align} where $P_i$ is the $i$th element of bases, and where $N = \texttt{Length}(\texttt{paulis})$. That is, measurement returns a Result $d$ such that the eigenvalue of the observed measurement effect is $(-1)^d$.

operation Measure (bases : Pauli[], qubits : Qubit[]) : Result

Input

bases
Pauli[]

Array of single-qubit Pauli values indicating the tensor product factors on each qubit.

qubits
Qubit[]

Register of qubits to be measured.

Output

Result

Zero if the $+1$ eigenvalue is observed, and One if the $-1$ eigenvalue is observed.

Remarks

If the basis array and qubit array are different lengths, then the operation will fail.