Wolfram`QuantumFramework`
QuantumMeasurement |
| QuantumMeasurement[dist,s] dist s |
Details
Examples
(8)
Basic Examples
(2)
Define a object by explicitly specifying the inputs:
QuantumMeasurement
In[309]:=
QuantumMeasurement |
QuditName |
QuditName |
QuantumState |
QuantumState |
Out[309]=
QuantumMeasurement
|
———
QuantumMeasurement
QuantumMeasurementOperator
In[1]:=
result=
["PauliZ",{1}]
[{0.6,0.8}]
QuantumMeasurementOperator |
QuantumState |
Out[1]=
QuantumMeasurement
|
Use property to obtain the resulting measurement outcome's distribution:
"Distribution"
In[2]:=
result["Distribution"]
Out[2]=
Use property to obtain the possible states after measurement:
"States"
In[3]:=
result["States"]
Out[3]=
QuantumState
,QuantumState
|
|
Use property "StatesAssociation" to obtain the association of measurement outcomes with their corresponding quantum state:
In[4]:=
result["StatesAssociation"]
Out[4]=
QuantumState
,QuantumState
0
|
1
|
Scope
(1)
Define a object:
QuantumMeasurement
In[310]:=
qmd=
<|
[-1]0.6,
[1]0.4|>,
[{1,0}],
[{0,1}]
QuantumMeasurement |
QuditName |
QuditName |
QuantumState |
QuantumState |
Out[310]=
QuantumMeasurement
|
Draw the probability plot of measurement outcomes:
In[311]:=
qmd["ProbabilityPlot"]
Out[311]=
Generate a probability table:
In[312]:=
qmd["ProbabilityTable"]
Out[312]=
Other supported properties:
In[118]:=
qmd["Properties"]
Out[118]=
{State,Distribution,Outcomes,Probabilities,Mean,States,StateAssociation,Entropy,PostMeasurementState,StateType,Basis,Amplitudes,Weights,StateVector,DensityMatrix,NormalizedState,NormalizedAmplitudes,NormalizedStateVector,NormalizedDensityMatrix,VonNeumannEntropy,Purity,Type,PureStateQ,MixedStateQ,Projector,NormalizedProjector,Operator,NormalizedOperator,Eigenvalues,Eigenvectors,Eigenstates,Computational,SchmidtBasis,SpectralBasis,StateTensor,StateMatrix,Tensor,Matrix,Pure,Mixed,ElementAssociation,Association,Elements,InputElementNames,OutputElementNames,ElementNames,Names,NormalElementNames,InputElements,OutputElements,InputElementDimensions,OutputElementDimensions,ElementDimensions,ElementDimension,MatrixElementDimensions,OrthogonalElements,Projectors,PureStates,PureEffects,PureMaps,InputSize,OutputSize,Size,InputRank,OutputRank,Rank,InputNameDimensions,InputDimensions,InputNameDimension,InputDimension,OutputNameDimensions,OutputDimensions,OutputNameDimension,OutputDimension,NameDimensions,Dimensions,Dimension,OutputBasis,InputBasis,QuditBasis,HasInputQ,MatrixNameDimensions,TensorDimensions,MatrixDimensions,InputTensor,InputMatrix,OutputTensor,OutputMatrix,TensorRepresentation,MatrixRepresentation,Qudits,InputQudits,OutputQudits,Dual,Transpose,ConjugateTranspose,Picture,Input,Output,Label}
Generalizations & Extensions
(1)
Applications
(1)
Simulate a quantum measurement (finite number of outcomes) by sampling:
In[2101]:=
result=
["Computational",{1}]
[{1/Sqrt[3],Sqrt[2/3]}]
QuantumMeasurementOperator |
QuantumState |
Out[2101]=
QuantumMeasurement
|
In[2102]:=
sample=RandomVariate[result["Distribution"],20]
Out[2102]=
{|0〉,|1〉,|1〉,|1〉,|1〉,|1〉,|1〉,|0〉,|0〉,|0〉,|0〉,|0〉,|0〉,|0〉,|1〉,|1〉,|0〉,|0〉,|1〉,|1〉}
Implement a conditional or adaptive quantum operation. For example, apply the X-gate if measurement outcome is 1:
In[2117]:=
IfEcho@RandomVariate[result["Distribution"]]===
["PauliX"][#]&/@result["States"],result["States"]
1
,QuantumOperator |
»
|0〉
Out[2117]=
QuantumState
,QuantumState
|
|
Properties & Relations
(1)
Consider the following single qubit measurement acting on a two-qubit state:
In[2086]:=
dist1=
["Computational",{1}]
[{1/Sqrt[8],1/Sqrt[4],1/Sqrt[2],1/Sqrt[8]}]
QuantumMeasurementOperator |
QuantumState |
Out[2086]=
QuantumMeasurement
|
QuantumMeasurementOperator
QuantumMeasurement.
QuantumMeasurement
In[2087]:=
dist2=
["Computational",{2}][dist1]
QuantumMeasurementOperator |
Out[2087]=
QuantumMeasurement
|
Compare the probabilities:
Compare the states:
Probabilities are always positive:
Total probability is normalized to 1:
A quantum eraser circuit takes two arguments: the angle at which the PHASE gate is implemented and the experimenter's choice of measuring the second qubit in Pauli-Z or Pauli-X basis:
Visualize the circuits:
If the experimenter chose Pauli-Z basis, no interference is detected:
If the experimenter chose Pauli-X basis, interference pattern is recovered: