예제 #1
0
 def convert_bitstring(key: typing.Union[BitString, numbers.Integral], n_qubits):
     if isinstance(key, numbers.Integral):
         return BitString.from_int(integer=key, nbits=n_qubits)
     elif isinstance(key, str):
         return BitString.from_binary(binary=key, nbits=n_qubits)
     else:
         return key
예제 #2
0
 def from_int(cls, i: int, coeff=1, n_qubits: int = None):
     if isinstance(i, BitString):
         return QubitWaveFunction(state={i: coeff}, n_qubits=n_qubits)
     else:
         return QubitWaveFunction(
             state={BitString.from_int(integer=i, nbits=n_qubits): coeff},
             n_qubits=n_qubits)