QNLP  v1.0
QNLP.proc.HammingDistance.HammingDistance Class Reference
Inheritance diagram for QNLP.proc.HammingDistance.HammingDistance:
Inheritance graph
Collaboration diagram for QNLP.proc.HammingDistance.HammingDistance:
Collaboration graph

Public Member Functions

def __init__ (self, num_bits, simulator)
 
def calc (self)
 

Data Fields

 num_bits
 
 sim
 

Private Member Functions

def _UMatrix (self, theta)
 
def _UMatrixPowMin2 (self, theta)
 

Detailed Description

This class is used to encode the Hamming distance between two 
qubit registers into the phase.

Definition at line 12 of file HammingDistance.py.

Constructor & Destructor Documentation

◆ __init__()

def QNLP.proc.HammingDistance.HammingDistance.__init__ (   self,
  num_bits,
  simulator 
)

Reimplemented in QNLP.proc.HammingDistance.HammingDistanceGroupRotate, QNLP.proc.HammingDistance.HammingDistanceOverwriteAux, and QNLP.proc.HammingDistance.HammingDistanceExpITheta.

Definition at line 17 of file HammingDistance.py.

17  def __init__(self, num_bits, simulator):
18  self.num_bits = num_bits
19  self.sim = simulator
20 

Member Function Documentation

◆ _UMatrix()

def QNLP.proc.HammingDistance.HammingDistance._UMatrix (   self,
  theta 
)
private

Definition at line 21 of file HammingDistance.py.

21  def _UMatrix(self, theta):
22  npmat = np.array([[np.exp(1j*theta), 0], [0, 1]])
23  return DCMatrix(npmat.flatten())
24 

Referenced by QNLP.proc.HammingDistance.HammingDistanceExpITheta._step3().

Here is the caller graph for this function:

◆ _UMatrixPowMin2()

def QNLP.proc.HammingDistance.HammingDistance._UMatrixPowMin2 (   self,
  theta 
)
private

Definition at line 25 of file HammingDistance.py.

25  def _UMatrixPowMin2(self,theta):
26  npmat = np.linalg.matrix_power([[np.exp(1j*theta), 0], [0, 1]], -2 )
27  return DCMatrix(npmat.flatten())
28 

Referenced by QNLP.proc.HammingDistance.HammingDistanceExpITheta._step3().

Here is the caller graph for this function:

◆ calc()

def QNLP.proc.HammingDistance.HammingDistance.calc (   self)

Definition at line 30 of file HammingDistance.py.

30  def calc(self):
31  pass
32 

Field Documentation

◆ num_bits

QNLP.proc.HammingDistance.HammingDistance.num_bits

◆ sim


The documentation for this class was generated from the following file: